本文實例講述了Java正則表達式實現(xiàn)在文本中匹配查找換行符的方法。分享給大家供大家參考,具體如下:
默認情況下,正則表達式 ^ 和 $ 忽略行結束符,僅分別與整個輸入序列的開頭和結尾匹配。如果激活 MULTILINE 模式,則 ^ 在輸入的開頭和行結束符之后(輸入的結尾)才發(fā)生匹配。處于 MULTILINE 模式中時,$ 僅在行結束符之前或輸入序列的結尾處匹配。
NLMatch.java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
package nlMatch; import java.util.regex.Pattern; /** * Created by Frank * 使用正則表達式在文本中查找換行符 */ public class NLMatch { public static void main(String[] args) { String input = "I dream of engines\nmore engines, all day long" ; System.out.println( "INPUT:" + input); System.out.println(); String[] patt = { "engines.more engines" , "ines\nmore" , "engines$" }; for ( int i = 0 ; i < patt.length; i++) { System.out.println( "PATTERN:" + patt[i]); boolean found; Pattern p1l = Pattern.compile(patt[i]); found = p1l.matcher(input).find(); System.out.println( "DEFAULT match " + found); // .代表任何符號(DOT ALL), Pattern pml = Pattern.compile(patt[i], Pattern.DOTALL | Pattern.MULTILINE); found = pml.matcher(input).find(); System.out.println( "Multiline match " + found); System.out.println(); /* 運行結果: DEFAULT match true Multiline match true PATTERN:engines$ DEFAULT match false Multiline match true */ } } } |
eclipse運行結果如下:
希望本文所述對大家java程序設計有所幫助。