我想在每個「。」分裂一個字符串。要麼 」?」我用這個正則表達式:Android拆分字符串與正則表達式不工作
(?<=(?!.[0-9])[?.])
理論上的代碼還可以防止劈裂如果點後跟一個數字所以像3.000不會分裂,它也包括在新的字符串的位置。
例如,如果我有這樣的文字:「你好。你最喜歡的號碼是什麼?它是3.560。」我想得到:「你好。」,「你最喜歡的號碼是什麼?」,「它是3.560」。
我做了一個簡單的Java程序在我的電腦上,它的工作原理完全一樣我想:
String[] x = c.split("(?<=(?!.[0-9])[?.])");
for(String v : x){
System.out.println(v);
}
然而,當我在我的Android應用程序使用相同的正則表達式不拆什麼...
x = txt.split("(?<=(?!.[0-9])[?.])");
//This, in my android app, returns an array with only one entry which is the whole string without splitting.
PS。使用(?< = [?.])可以工作,所以問題必須在(?!。[0-9])部分,這意味着排除後跟數字的點。
什麼是你的字符串? –
在應用程序中,用戶輸入字符串,但我一直在嘗試使用本文中的文本:http://reviews.cnet.com/8301-19736_7-57550564-251/samsung-galaxy-s3-to-get- multiview-smart-rotation/ – JoeyCK