我想匹配一個HTML文件:如何匹配Java中String的開頭?
如果文件以空格開始,然後是結束標記</sometag>
,return true
。
其他return false
。我使用了"(\\s)*</(\\w)*>.*"
,但它不匹配\n </p>\n </blockquote> ...
。
我想匹配一個HTML文件:如何匹配Java中String的開頭?
如果文件以空格開始,然後是結束標記</sometag>
,return true
。
其他return false
。我使用了"(\\s)*</(\\w)*>.*"
,但它不匹配\n </p>\n </blockquote> ...
。
感謝Gabe的幫助。 Gabe是正確的。 .
默認與\n
不匹配。我需要設置DOTALL
模式。
要做到這一點,請將(?s)
添加到正則表達式的開頭,即(?s)(\\s)*</(\\w)*>.*
。
你也可以這樣做:
Pattern p = Pattern.compile("(\\s)*</(\\w)*>");
Matcher m = p.matcher(s);
return m.lookingAt();
字符串是否與該模式開始,而不是檢查整個字符串的模式匹配,它只是檢查。
我同意,TimK。謝謝! – JackWM
@加貝我以爲它匹配換行符。看到這裏http://www.vogella.com/articles/JavaRegularExpressions/article.html。 \ s \t空格字符,[\ t \ n \ x0b \ r \ f]的縮寫 – JackWM
@JackWM:你是對的;它是'''不一定匹配'\ n'。參見'DOTALL'模式。 – Gabe
@Gabe明白了。謝謝! – JackWM