我需要使用正则表达式转换包含通配符的字符串。
例如,如果我有一个如下所示的输入字符串:
的b * DD * C
这意味着
ab(任意数量的任何字符)d(任意数量的任何字符)c
其中any character
是任何字母数字字符或'_'。
我尝试了类似下面的内容:
'ab([[:alnum]] |'_')* dd([[:alnum]] |'_')* c'
但是,正如您所看到的,例如,([[:alnum]] | '\_')*
也匹配d
,因此,我无法获得所需的匹配。
我想到的是使用以下内容:
'ab [^ d] * dd [^ c] * c'
还有其他更好的解决方案吗?
提前致谢!
答案 0 :(得分:1)
您可以使用此正则表达式:
/ab\w*?dd\w*?c/
\w*?
将匹配任何字母数字字符或_ 非贪婪。