我是正则表达式的新手我正在搜索下面的句子:
OCEU0H - Debt securities issued by multilateral development company
a. OCEU0J - Debt securities issued by private company
应该是: -
['OCEU0H','OCEU0J']
OC
始终处于开始状态,EU
将是任何输入国家/地区代码。
我的尝试是: -
r'\b+(^(OC)\W+)\b+'
另外,请为我提供正则表达式的最佳教程或文档。
答案 0 :(得分:3)
您需要使用
\bOC\w+\b
请参阅regex demo
要匹配单词字符,您需要使用\w
,而不是\W
。请注意,如果您只想在OC
之后匹配ASCII字母,则使用[A-Za-z]
而不是\w
(任何字母,数字或_
)更有意义。
您不应量化\b
(字边界)等零宽度断言,并且不应在^
之前使用OC
锚点,因为^
与sting的开始匹配。
模式详情
\b
- 字边界OC
- 文字子字符串\w+
- 一个或多个单词字符(如果使用[A-Za-z]+
,则为任意1个ASCII字母)\b
- 字边界