我有文字:
abc abc Abc ABC AB_C
我想用大写字母和破折号来匹配单词(这不是必须的)。
我的解决方案是:
[A-Z]+(_{0,1}[A-Z]+)+
而且它可以在regexpal.com上使用,但不能使用sed
。我究竟做错了什么?
sed 's/\([A-Z]+(_{0,1}[A-Z]+)+\)/\1/g'
传统sed不支持该正则表达式。可以使用grep -oP
(带有PCRE标志)
s='abc abc Abc ABC AB_C'
grep -oP '([A-Z]+(_?[A-Z]+)+)' <<< "$s"
ABC
AB_C
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句