regex - 创建一个正则表达式,它可以只过滤掉任何给定字符串中的单词
问题描述
你好世界各地的程序员,我想问一下是否有办法创建一个完美的分词器,它只能检测任何给定字符串中的英文单词?例如,如果您有此字符串“JGS (8/8/01 5:20:19 PM); 我们需要启用;以下操作的禁用和悬停图标:; CopyToClipboardActionDelegate; RelaunchActionDelegate; TerminateAndRemoveActionDelegate; ; DW "那么预期的结果应该是:we、need、enabled、disabled、hover、icons、for、following、actions、Copy、To、Clipboard、Action、Delegate、Relaunch、Action、Delegate、Terminate、And、Remove、Action、Delegate 等等上…… 我想知道这样的事情是否可能?
我已经尝试过 word_tokenize 并且还尝试使用由正则表达式组成的子字符串在字符串中查找模式,但到目前为止我无法得到我需要的结果。
这就是我为了从上面得到结果所需要的。PS我知道这种标记化方法无法实现我想要的,我只是不知道如何做正则表达式:(
def tokenization(series):
list = [];
s = series.to_numpy();
for series in s:
tokens = word_tokenize(series);
list.append(tokens);
return list;
我也试过这个,但失败得很惨
def tokenization(series):
list = [];
s = series.to_numpy();
for series in s:
tokens = re.findall('^[a-zA-Z]*$', series);
list.append(tokens);
return list;
我得到的结果是:'JGS', '(', '8/8/01', '5:20:19', 'PM', ')', ';', 'We', 'need', '启用', ';', '禁用', '&', 'hover', 'icons', 'for', 'the', 'following', 'actions', ':', ';', 'CopyToClipboardActionDelegate ', ';', 'RelaunchActionDelegate', ';', 'TerminateAndRemoveActionDelegate', ';', ';', 'DW', '(', '9/24/2001', '2:22:48', 'PM', ')', ';', 'Use', 'the', 'standard', 'copy', 'icon', 'for', 'copy', 'to', 'clipboard', '( ', '桌面', '可能的', '暴露', 'it', ')', '.', ';', ';', 'DW', '(', '9/24/2001', '2:23:05', 'PM' , ')', ';', 'Made', 'requests', 'for', ';', 'Relaunch', ';', 'Terminate', 'All', ';', 'Terminate', ' &', '消除'并且正如上面所说的那样,就标记化而言,它应该几乎相同,但应该只存在单词。因此,如果有人有任何想法,所有帮助将不胜感激。
解决方案
推荐阅读
- laravel - 如何更改访问令牌 Laravel Passport 的到期日期
- ios - 无法从 Xcode 11 上传 .ipa -“Info.plist 指示 iOS 应用程序,但提交 pkg 或 mpkg”
- java - 新手到处都得到空指针
- python - 来自服务器的 TensorFlow 使用 sudo 命令不起作用
- c# - const 和 static 有什么相似之处?
- json - 使用 jq 处理 JSON - 将数组索引/名称处理为输出
- go - Golang 解包可变参数
- python - 当项目作为服务启动时,Python 模块导入失败
- docusignapi - 有没有可以直接处理我需要签名的文件的API
- java - 得到 404:源服务器没有找到目标资源的当前表示。为什么?