[英]Regex to match plain string with only alphabets as well as optional dot character as beginning of match
我有以下正则表达式:
[:?\.](.+)[\|]?
成功匹配如下字符串:
The data.mws auth token field is required| lalafa daga.lallala
要么
The data.mws auth token field is required
但我也希望它能匹配如下字符串:-
This is an error
如何使[:?\.]
部分可选? 我试过[:?\.]?
问题是像The data.mws auth token field is required| lalafa daga.lallala
这样的字符串 The data.mws auth token field is required| lalafa daga.lallala
它也会匹配the data
部分,我该如何解决这个问题。
您可以使用
/(?:^(?!.*[:?.])|(?<=[:?.]))(.+)\|?/
请参阅正则表达式演示
细节
(?:^(?.:*[?.?])|(:<=[?..]))
- 字符串的开头没有跟:
, ?
和.
在除换行字符以外的任何零个或多个字符之后,尽可能多,或紧接在:
, ?
之前的位置之后或.
(.+)
- 第 1 组:除换行符以外的任何零个或多个字符,尽可能多\|?
- 可选|
字符。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.