2016-07-26 245 views
0

我有以下2所陳述正則表達式匹配

<p class="chapterHeadA" id="cha35" style="text-indent: 0%;"> 
<p class="chapterHeadA" id="cha36"> 

我想同時匹配,也就是說,如果我有style="text-indent: 0%;",與之相匹配的其他忽略這一點,並符合其他(如在第二份聲明)

我試着下面,但它似乎並沒有工作。

<p class=\"(.*)\" id=\"(.*)\" (style=\"text-indent: (.*)%;)?\"> 

請讓我知道我要去哪裏,我怎麼能匹配這個。

而且我有別的像

<p class="chapterHeadA" id="cha15" style="text-indent: 0%;"><span class="bold"> 
<p class="chapterHeadA" id="cha15" style="text-indent: 0%;">1. <span class="bold"> 

當我申請我的正則表達式,比賽被捉住,直到的=bold>末,是沒有辦法,我也可以限制趕上p class的只能做到>方式標記

感謝

回答

1

您應該包括(...)?的空間和最後一個雙引號,因爲它們不存在於你的第二個字符串。

<p class=\"(.*)\" id=\"(.*)\"(style=\"text-indent: (.*)%;\")?> 

至於你更新的問題,使用引號將正則表達式設置爲懶,以便它匹配儘可能少的文本。

<p class=\"(.*?)\" id=\"(.*?)\"(style=\"text-indent: (.*?)%;\")?> 
+0

嗨nicael,能否請您閱讀我更新的問題。 – user3872094

+0

@user請參閱編輯。 – nicael