求助 如何快速批量找出txt文件中的所有4字词(可以用正则表达式)
各位前辈,小人菜鸟,要处理几万词,我现在要一个一个的手动处理,累的我sb呵呵的。请大家帮帮忙。支小弟一招。内容如下我有一个txt文本文件,里面有几万个汉语词。词和词之间都...
各位前辈,小人菜鸟,要处理几万词,我现在要一个一个的手动处理,累的我sb呵呵的。请大家帮帮忙。支小弟一招。内容如下
我有一个txt文本文件,里面有几万个汉语词。词和词之间都用空格隔开。
我想用一个办法 把里面的4个字的词一次都找出来。并输出一个新的txt文件。
但要求4字词原来在第一行,输出后还要在第几行,没有4字词的行就空行代替
最好能用这样的正则表达式
\\w+@(\\w+\\.)+[a-z]{2,3} 抽取邮箱
^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$ 抽取身份证号
例如
国民 黎民百姓 人民 全民 布衣
众生 民众 群众 千夫 万众 公众
老少 老老少少 老小 白叟 黄童 大大小小
输出
黎明百姓
(空行)
老老少少 大大小小
找完4字词后,有没有一个办法能再找出所有非四字词 展开
我有一个txt文本文件,里面有几万个汉语词。词和词之间都用空格隔开。
我想用一个办法 把里面的4个字的词一次都找出来。并输出一个新的txt文件。
但要求4字词原来在第一行,输出后还要在第几行,没有4字词的行就空行代替
最好能用这样的正则表达式
\\w+@(\\w+\\.)+[a-z]{2,3} 抽取邮箱
^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$ 抽取身份证号
例如
国民 黎民百姓 人民 全民 布衣
众生 民众 群众 千夫 万众 公众
老少 老老少少 老小 白叟 黄童 大大小小
输出
黎明百姓
(空行)
老老少少 大大小小
找完4字词后,有没有一个办法能再找出所有非四字词 展开
2个回答
展开全部
查找:((^| +)([\u4E00-\u9FA5]{5,}|[\u4E00-\u9FA5]{1,3})(?=$| +)|^((?!(?:^| +)[\u4E00-\u9FA5]{4}(?:$| +)).)+$)
替换为空
瑕疵:行首可能留有空格,欲求完美,可自行批量删除,应该会吧?
探讨:有个很关键的事儿就是“什么叫汉字”,看你的例子全是GBK集合(收编了21000多个)的,如果想包含中日韩超大字符集的汉字(目前已编码76000多个),则[\u4E00-\u9AF5]的写法需要扩充,有兴趣的话,可以找一找我回答过的相关问题。
另:“找出所有非四字词”是啥意思?是“删除所有四字词,只留下非四字词”吗?估计第一个问题解决了,应该能够启发你自己搞定,若不成,再追问。
替换为空
瑕疵:行首可能留有空格,欲求完美,可自行批量删除,应该会吧?
探讨:有个很关键的事儿就是“什么叫汉字”,看你的例子全是GBK集合(收编了21000多个)的,如果想包含中日韩超大字符集的汉字(目前已编码76000多个),则[\u4E00-\u9AF5]的写法需要扩充,有兴趣的话,可以找一找我回答过的相关问题。
另:“找出所有非四字词”是啥意思?是“删除所有四字词,只留下非四字词”吗?估计第一个问题解决了,应该能够启发你自己搞定,若不成,再追问。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询