草庐IT

regex_replace

全部标签

regex - 使用 Linux Shell 正则表达式匹配文件名

我需要一种方法来匹配目录中的文件名。例如我有三个文件:CAt_DoG_ZebRa.TXTMOUSE_lion_deer_BIRD.TXTfIsh_biRD_LION.TXT无论如何我都不是正则表达式专家,但是我之前在SnapLogic和Pentaho中使用过类似的东西:(?i).*(?=.*bird)(?=.*lion).*.TXT以上将匹配所有包含单词“bird”和“lion”的文件名,忽略大小写并且单词的顺序无关紧要。很强大!所以它会匹配这两个:MOUSE_lion_deer_BIRD.TXTfIsh_biRD_LION.TXT我结合find和grep尝试了上述的许多变体,但都无济

regex - 将 grep linux 命令与 perl regex + 捕获组一起使用

所以我对这个主题做了一些研究,但我没有找到完美的解决方案。例如,我在变量中有一个字符串。var="a1b1c2"现在我想做的是只匹配“a”后跟任何数字,但我只希望它返回“a”之后的数字匹配它的规则如'a\d'因为我只需要数字,所以我尝试了'a(\d)'也许它确实在某个地方捕获了它,但我不知道在哪里,这里的输出仍然是“a1”我还尝试了一个非捕获组来忽略输出中的“a”,但在perl正则表达式中没有效果:'(?:a)\d'作为引用,这是我终端中的完整命令:[root@host~]#var="a1b1c2"[root@host~]#echo$var|grep-oP"a(\d)"a1可能没有-P

regex - 将 grep linux 命令与 perl regex + 捕获组一起使用

所以我对这个主题做了一些研究,但我没有找到完美的解决方案。例如,我在变量中有一个字符串。var="a1b1c2"现在我想做的是只匹配“a”后跟任何数字,但我只希望它返回“a”之后的数字匹配它的规则如'a\d'因为我只需要数字,所以我尝试了'a(\d)'也许它确实在某个地方捕获了它,但我不知道在哪里,这里的输出仍然是“a1”我还尝试了一个非捕获组来忽略输出中的“a”,但在perl正则表达式中没有效果:'(?:a)\d'作为引用,这是我终端中的完整命令:[root@host~]#var="a1b1c2"[root@host~]#echo$var|grep-oP"a(\d)"a1可能没有-P

regex - 需要 RegExp 帮助 Linux Bash grep 命令过滤掉包含方括号的行

使用以下示例,我需要过滤掉仅包含“ABC”的行,同时跳过匹配“ABC”且包含方括号的行:2012-04-0404:13:48,760~sample1~ABC[TLE5332.2332/13/20323320392]:CAST2012-04-0404:13:48,761~sample2~ABC2012-04-0404:13:48,761~sample3~XYZ[BAC.CAD.ABC.CLONE232511]:TEST这是我所拥有的,但到目前为止我无法成功过滤掉带有方括号的行:bash-3.00$catMetrics.log|grep-e'[^\[\]]'|grep-i'ABC'请帮忙?

regex - 需要 RegExp 帮助 Linux Bash grep 命令过滤掉包含方括号的行

使用以下示例,我需要过滤掉仅包含“ABC”的行,同时跳过匹配“ABC”且包含方括号的行:2012-04-0404:13:48,760~sample1~ABC[TLE5332.2332/13/20323320392]:CAST2012-04-0404:13:48,761~sample2~ABC2012-04-0404:13:48,761~sample3~XYZ[BAC.CAD.ABC.CLONE232511]:TEST这是我所拥有的,但到目前为止我无法成功过滤掉带有方括号的行:bash-3.00$catMetrics.log|grep-e'[^\[\]]'|grep-i'ABC'请帮忙?

regex - 带正则表达式的 grep 作用域

我正在尝试在Linux的grep命令中使用正则表达式(^\s*\*\s*\[\][^\*]+?(\w*\:[^\*]+\d$)|([^\*]+[.]com[.]au$))当我在https://www.regextester.com试用它时使用文件的内容,我得到了所需的结果,即所需的字段正在匹配但是当我尝试将其用作grep'(^\s*\*\s*\[\][^\*]+?(\w*\:[^\*]+\d$)|([^\*]+[.]com[.]au$))'file1它给我的只是一个空值!这里有什么问题? 最佳答案 我不认为grep理解像\w和\s这

regex - 带正则表达式的 grep 作用域

我正在尝试在Linux的grep命令中使用正则表达式(^\s*\*\s*\[\][^\*]+?(\w*\:[^\*]+\d$)|([^\*]+[.]com[.]au$))当我在https://www.regextester.com试用它时使用文件的内容,我得到了所需的结果,即所需的字段正在匹配但是当我尝试将其用作grep'(^\s*\*\s*\[\][^\*]+?(\w*\:[^\*]+\d$)|([^\*]+[.]com[.]au$))'file1它给我的只是一个空值!这里有什么问题? 最佳答案 我不认为grep理解像\w和\s这

regex - 从文件中提取正则表达式捕获组的匹配项

我想在linux命令行下执行标题命名的操作(几个cabash脚本也可以)。我尝试的命令是:sed's/href="([^"])"/$1/g'page.html>list.lst但显然它失败了。准确地说,这是我的输入:我想要的输出是输入文件中所有匹配项的逗号分隔或空格分隔列表:style/css/colors.css,style/css/global.css,style/css/icons.css我想我的表达是正确的:href="([^"]*)"但我不知道如何执行此操作。sed会进行搜索/替换,这不是我想要的。(相反,我只需要保留匹配项并将其余部分扔掉,而不是替换它们)

regex - 从文件中提取正则表达式捕获组的匹配项

我想在linux命令行下执行标题命名的操作(几个cabash脚本也可以)。我尝试的命令是:sed's/href="([^"])"/$1/g'page.html>list.lst但显然它失败了。准确地说,这是我的输入:我想要的输出是输入文件中所有匹配项的逗号分隔或空格分隔列表:style/css/colors.css,style/css/global.css,style/css/icons.css我想我的表达是正确的:href="([^"]*)"但我不知道如何执行此操作。sed会进行搜索/替换,这不是我想要的。(相反,我只需要保留匹配项并将其余部分扔掉,而不是替换它们)

regex - 在sed中,如何表示 "alphanumeric or _ or -"

尝试过[a-zA-Z0-9-_][a-zA-Z0-0\-\_][[[:alnum:]]-_]...用正则表达式表示的正确方法是什么?似乎[a-zA-Z0-9-]适用于字母数字或破折号。但是当我添加另一个下划线时,它会中断。 最佳答案 这将是这个字符类:[[:alnum:]_-]这意味着允许其中之一:1.Alphanumeric1.Underscore1.Hyphen将连字符保留在字符类的第一个或最后一个位置以避免转义很重要。 关于regex-在sed中,如何表示"alphanumeric