我在正则表达式上创建了双引号之间的单词。 例子
string = Hi[pause="x-weak"]Parth[pause="weak"]How[pause="medium"]are[pause="strong"]You[pause="x-strong"]tell me
regex = \[\h*pause\h*=\h*"\h*(\w+)\h*"\h*]
仅匹配[pause="weak"]
。我需要它来匹配所有带有pause
的标签。
答案 0 :(得分:1)
您可以使用
\[[^][]*pause="(?P<type>[^"]+)"
也可以捕获type
,请参见a demo on regex101.com。
PHP
中,这可能是
<?php
$string = 'Hi[pause="x-weak"]Parth[pause="weak"]How[pause="medium"]are[pause="strong"]You[pause="x-strong"]tell me';
$regex = '~\[[^][]*pause="(?P<type>[^"]+)"~';
if (preg_match_all($regex, $string, $matches)) {
print_r($matches);
}
?>