pcregrep

无法在 shell 脚本中 grep 外语
pcregrep

无法在 shell 脚本中 grep 外语

我是 shell 脚本编写的新手,我有一个文本,其中包含以下格式的文本:- "some foreign language",'corresponding ID to text' 例如:- "Назад",IDC_SSB_DLG_BACK_BTN 我需要找到与 ID 相关的文本并将其保存在文本文件中。 这是我的示例脚本:- #!/bin/sh target_file=$1 output=$2 translationID=IDC_SSB_DLG_BACK_BTN translation=$(cat $target_file | grep $translati...

Admin

使用 pcregrep 搜索多行字符串的精确匹配
pcregrep

使用 pcregrep 搜索多行字符串的精确匹配

我正在尝试使用 搜索目录pcregrep。我想使用长的多行字符串进行搜索。基本上,我试图检查多个代码库是否存在抄袭。因此,我希望能够从某些代码中复制/粘贴代码块,然后在目录中搜索任何完全匹配的内容。 我遇到的问题是,当我使用pcregrep选项-M( pcregrep -M) 时,它似乎将每个换行符视为单独的模式。 因此,当我获取一个我知道对于一个文件来说是唯一的代码块时,我仍然可能会得到多个响应,因为某些单独的行可能会在其他地方使用。 这是我正在使用的: pcregrep -FlMr "long, multi-line string" /directory...

Admin

如何在 Rocky Linux 上安装 pcre2-tools
pcregrep

如何在 Rocky Linux 上安装 pcre2-tools

我使用的是 RL v9.1。包裹似乎在那里(PCRE2-工具-10.40-2.el9.x86_64.rpm)但 yum 没有看到它: yum install pcre2-tools runner_gitlab-runner 1.4 kB/s | 1.0 kB 00:00 runner_gitlab-runner-source 1.4 kB/s | 951 B 00:00 No match for argument: pcre2-tools Error: Unable to find a match: p...

Admin

是否可以丢弃正则表达式中的外括号并考虑内部括号?
pcregrep

是否可以丢弃正则表达式中的外括号并考虑内部括号?

我有很多带有括号的模式,我制作了一个正则表达式,其中不考虑括号而仅考虑它们内部/之间的内容,但是当括号内的文本也包含 [] 括号时存在问题。 谢谢! 正则表达式:(?<inside_value>(?<=\[).*?\[?(?=\])) 例如, A) [ClusterReceiver[99] ] B) [first-second-third-8050-exec-a ] 从上面看,B) 工作正常,但 A) 不工作 每个案例返回的内容(不带引号): B) "first-second-third-8050...

Admin

捕获卡住的命令的输出
pcregrep

捕获卡住的命令的输出

我正在尝试使用正则表达式来捕获命令输出中的一些文本模式并创建一个数组list_mqs。问题是前面的命令被卡住并且永远不会终止。因此,当我使用 a 时pipeline | egrep,永远不会启动该egrep命令,因为其他例程未完成。 我试图捕捉的模式是: MQ_1A, MQ_F5, MQ_H7。 [user@host] list_mqs=($(command_never_ends | egrep -io "MQ_*")) 有什么方法可以重定向前面命令的输出,即使它永远不会结束(或者可能设置一个计数器,如果到达退出),并传递这些内容以供例程分析egrep?...

Admin

如何 grep 查找重复模式的重复模式?
pcregrep

如何 grep 查找重复模式的重复模式?

我有一个文本文件 Fred.txt: % cat -e fred.txt 00:$ 00:04:$ 01:00:23:34$ 01:$ 01:40:$ 01:40:32:$ % 我可以 grep 查找包含 2 位数字和冒号的行: % pcregrep -e '[\d]{2}:' fred.txt 00: 00:04: 01:00:23:34 01: 01:40: 01:40:32: % 但是当我尝试获取该模式的重复模式时,它找不到它们: % pcregrep -e '[[\d]{2}:]{2}' fred.txt % 我希望获得与此相同的输出:...

Admin

PCre2grep 多行正则表达式
pcregrep

PCre2grep 多行正则表达式

我正在尝试创建一个正则表达式来将文本文件的第一个 html 与以下内容相匹配: garbage garbage §<html class="test1"> <div>test</div></html>§ garbage garbage §<html class="test2> <div>test</div></html>§ garbage garbage §<html class="test3"> <div>test</div>...

Admin

pcregrep(或 pcre2grep)是否具有与 grep 的 --max-count 选项等效的功能?
pcregrep

pcregrep(或 pcre2grep)是否具有与 grep 的 --max-count 选项等效的功能?

获取以下文件: aaa bbb XXX ccc ddd eee XXX fff ggg 我想打印,和pcregrep,直到第一行包含以下内容的所有行XXX: aaa bbb XXX 有可能吗(用pcregrep或pcre2grep)? 我实现了这一点: $ pcre2grep -nM '(.|\n)*?XXX' file 1:aaa bbb XXX 4:ccc ddd eee XXX 有没有办法在第一场比赛后退出?好像pcre2grep没有--max-count类似的选项grep。 注意:我知道有更好的工具可以获得所需的结果(sed等等),但我不是在这...

Admin

PCRE grep 中的“\b”与“\S”有什么区别?
pcregrep

PCRE grep 中的“\b”与“\S”有什么区别?

我现在知道那\b是为了Word Boundaries 尽管 \s是\S为了Shorthand Character Classes 在哪里 \s(小写)用于空白(空格、制表符、vtab、换行符) 和 \S(大写)则相反。除了空白之外的任何内容 wolf@linux:~$ cat space.txt 0space 1 spaces 2 spaces 3 spaces 4 spaces wolf@linux:~$ 我没有看到这两个命令有任何区别。 wolf@linux:~$ grep -P '\S\s\S' space.txt 1 spaces...

Admin

与 RegEx 的最后一场比赛
pcregrep

与 RegEx 的最后一场比赛

我grep -oP '(?<=%28).*?(?=%29)' f.txt在下面一行做 chr01_pilon_pilon gmap-gsnap mRNA 55846944 55847057 . + . ID=NbD052382.1.mrna1;Name=NbD052382.1;Note=cytochrome b6/f complex subunit V %28plastid%29 %28NP_054520.1%29;Parent=NbD052382.1.path1;coverage=100.0;identity=1...

Admin

Grep 文件中包含空格的行
pcregrep

Grep 文件中包含空格的行

我有包含记录的文件 qwe.google.com IN A 1.1.1.1 qwe.google.com IN {uneven-space} A{space}1.1.1.1 qwe.google.com IN CNAME asd.google.com 我需要 grep 所有包含 的行IN A,因为它之间包含不均匀的空格,我无法这样做。 ...

Admin

awk 和egrep 用于正则表达式
pcregrep

awk 和egrep 用于正则表达式

我对unix很陌生! 试图弄清楚,从 fastq 文件中,有多少次读取连续有 3 个或更多 As ? 我使用egrep 'A{3}' 来告诉我有多少个AAA。但现在我想连续知道 >= 3 AAA。但是 >= 不起作用。我可以使用 awk 来帮助我确定这一点吗? 另外,我如何使用正则表达式来确定有多少个读取有 4 个或更多的 A 后跟 T 以外的东西? (GC 或 A)因此 A 必须 >= 4,然后是 GCorA 编辑:当我连续说 3A 时,我的意思是这样的:GGCTAAAAAACGGAT ...

Admin

CentOS 7 中缺少 pcregrep
pcregrep

CentOS 7 中缺少 pcregrep

我全新安装了 CentOS 8,并且 pcre 软件包已安装。 但是,pcregrep 命令不可用,并且在文件系统上找不到。根据 CentOS 文档,这应该位于“pcre”包中。 (看centos.pkgs.org) dnf提供*/pcregrep dnf提供*/pcre2grep 什么也没找到。 BTW< pcre2 也已安装,但仍然没有 pcre2grep 命令可用。 有人可以帮我找到“pcregrep”命令吗? ...

Admin

如何使用 RegEX 替换文本中的一行?
pcregrep

如何使用 RegEX 替换文本中的一行?

我遇到的问题是尝试匹配两组分隔符(上方和下方) 我试图仅匹配下面分隔符的第二部分(粗体)。 这样我就可以将同一天制作的新版本添加到多个文件中。使用perl,所以当我进行替换时我可以得到这样的结果 无论如何根据https://regex101.com/(以及我运行命令时的经验)它选择两组分隔符, 进行上面和下面的替换。 这是我正在使用的正则表达式 (?!V[0-9]{2}.[0-9]{2}.[0-9]{4}.1)(.*=.$) UNIX 中的命令: perl -pe 's#(?!V[0-9]{2}.[0-9]{2}.[0-9]{4}...

Admin