欢迎访问散文集文学网!

正则表达式分割句子

雕龙文库 分享 时间: 加入收藏 我要投稿 点赞

【第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=%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=%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('&')

【第3句】: 正则表达式来分割文本

不知道你要用什么语言写,下面是java写的,可以参考一下: public class App { public static void main(String[] args) { String str = "type=3&fm=flow_monitor&data=%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=%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('&')。

【第4句】: 怎么用正则表达式分割这个字符串

\n是回车,\\n就是字符串\n,不再是回车,当然不能使用\n来分割

分割方法如下:

String s = "ab\ncd\nef\\ngh";

String[] v = s.split("[\n]|([\\\\]n)");

下面解释一下字符串[\\\\]n"

首先,这是一个字符串,\是java字符串的转义字符,所又这里实际的字符串是

[\\]n,而这里的\是正则式中的转义字符,所又在正则式中表示\后跟一个n

52933
领取福利

微信扫码领取福利

微信扫码分享