我有一个幻影代码块,它把我的程序弄得一团糟,但我就是找不到它在我的项目中的位置。(对空白)代码是什么,但由于它是代码,它有很多空格,句号,括号,等等。这将是一个巨大的痛苦,键入一个正则表达式的整个事情。有没有一种方法,我可以搜索一个精确匹配的字符串使用grep -r?
grep -r
zmeyuzjn1#
fgrep(或grep -F)可以做到这一点。不要忘记引用模式以防止shell解释它:
fgrep
grep -F
$ echo 'a' | grep '[abc]'a$ echo 'a' | fgrep '[abc]'$ echo '[abc]' | fgrep '[abc]'[abc]
$ echo 'a' | grep '[abc]'
a
$ echo 'a' | fgrep '[abc]'
$ echo '[abc]' | fgrep '[abc]'
[abc]
字符串
dgsult0t2#
如果是多行模式,pcregrep -F可能有用(-F用于固定字符串)。
pcregrep -F
-F
p5fdfcr13#
下面是一个匹配markdown代码块的解决方案。我使用pcregrep(旧)和pcre2grep(新)
README.md
## InstallationInstall the application locally. ```shellpip install -r requirements.txtflask run --host=$HOST --port=$PORT
## Installation
Install the application locally.
```shell
pip install -r requirements.txt
flask run --host=$HOST --port=$PORT
End-to-end test.
curl "http://localhost"; echo
字符串# 解决方案
# 解决方案
$ pcregrep -M '[^`]*' README.md
[^`]*
pip install -r requirements.txtflask run --host=$HOST --port=$PORT
$ pcre2grep -M '[^`]*' README.md
型
3条答案
按热度按时间zmeyuzjn1#
fgrep
(或grep -F
)可以做到这一点。不要忘记引用模式以防止shell解释它:字符串
dgsult0t2#
如果是多行模式,
pcregrep -F
可能有用(-F
用于固定字符串)。p5fdfcr13#
下面是一个匹配markdown代码块的解决方案。我使用pcregrep(旧)和pcre2grep(新)
上下文
README.md
Test
End-to-end test.
$ pcregrep -M '
[^`]*
' README.md$ pcre2grep -M '
[^`]*
' README.md