linux - grep 仅用于大写单词

标签 linux bash grep

我想找到所有大写的单词,但是当我这样做的时候

grep -oP '\w*[A-Z]+\w*' *

我明白了

words.py:StringValue
words.py:WORDS
words.py:WORDS_ANSWERED
words.py:Answered
words.py:True

我希望的地方

words.py:WORDS
words.py:WORDS_ANSWERED

问题

如何确保只输出所有大写单词?

最佳答案

您可以在两侧使用此正则表达式,并使用 [A-Z0-9_] 而不是 \w:

grep -H -oP '\b[A-Z0-9_]*[A-Z]+[A-Z0-9_]*\b' *

words.py:WORDS
words.py:WORDS_ANSWERED

关于linux - grep 仅用于大写单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38328317/

相关文章:

linux - 在 Visual Studio Code for Linux 中编译 pascal 程序

linux - 如何安装memusg Linux工具

linux - 对于 Makefile 变量的每个目标

bash - grep -vf 大文件太慢

php - Grep $_SESSION ['id' ] 仅在 php 文件中

php - 导入 WordPress 显示黑屏

linux - 为什么 bash 在通过 make 执行时不支持 !(...) 模式(w/SHELL :=/bin/bash)?

bash - 如何在 shell 脚本中压缩旧目录?

bash - 如何转义嵌套 bash 命令返回的空格

linux - 如何根据条件使用 grep 删除行?