1. 求根據標點符號分割句子的正則表達式,保留標點,返回一個數據
正則表達式可沒法完成分割功能,提供一個思路,就是先把原字符串中的標點都替換成標點+特殊字符(這里可以用一個特殊點的字符,如"?"替換為"?^"),然后將替換后的字符串按特殊字符分割即可,不知道你用的什麼開發語言,C#的代碼如下
string str = "你好? 這是個測試。s is referred to? oh,yes.";
str = str.Replace("?", "?^").Replace("。", "。^").Replace("?", "?^").Replace(".", ".^");
string[] strArray = str.Split(new char[] { '^' }, StringSplitOptions.RemoveEmptyEntries);
2. 正則表達式來分割文本
不知道你要用什麼語言寫,下面是java寫的,可以參考一下:
public class App {
public static void main(String[] args) {
String str = "type=3&fm=flow_monitor&data=https://www.taoduyx.com/z/%5B%7B%7D%5D&q=03121&qid=f9e4a70e00058e95&rsv_did=56bc1f8648aaafa72ab9dfd2187f1001&rsv_tn=baidu&rsv_sid=1435_21086_26350_20718&t=1532154686223";
String[] items = str.split("&");
for (String item : items) {
System.out.println(item);
}
}
}運行結果:
如果是 javascript 用 str.split('&;') 就可以分割了
var str = "type=3&fm=flow_monitor&data=https://www.taoduyx.com/z/%5B%7B%7D%5D&q=03121&qid=f9e4a70e00058e95&rsv_did=56bc1f8648aaafa72ab9dfd2187f1001&rsv_tn=baidu&rsv_sid=1435_21086_26350_20718&t=1532154686223"
var items = str.split('&')