[英]Regex to match multiple patterns
?
对于可选模式我假设[]
框之间的区别是搜索的字符串必须以大写字母开头,而部分来自!
以后是可选的。 您可以使用?
在它后面。
您可以使用此正则表达式来查找示例文本:
\[([A-Z][A-Za-z0-9-]+(![\d.]+)?)\]
您可以拼出所有模式部分,例如
(?<=\[)[A-Z]-?[A-Za-z]+(?:!\d+(?:\.\d+)*)?(?=])
请参阅正则表达式演示。 详情:
(?<=\[)
- 一个积极的向后看,需要一个[
立即在左侧的字符[AZ]
- 大写字母-?
- 一个可选的-
[A-Za-z]+
- 一个或多个字母(?:?\d+(:.\?\d+)*)?
- 可选组匹配
!
- 一个!
字符\d+(?:\.\d+)*
- 一位或多位数字,然后出现零次或多次.
和一位或多位数字(?=])
- 一个积极的前瞻,需要一个]
字符立即在右侧。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.