正则表达式如何从值代理、用户名和号码中提取信息?

我有一个需求需要从电话拨号键盘中解析代理名称、用户名和电话号码的正则表达式。

例如随机用户输入如下内容:

 bt_linux_root_0012127773456

 bt_windows_root_0012127773456

 bt_randomstring_randomstringnumber_0012127773456

我只能使用表达式来解析输入值,期望的输出如下( ^bt(\d+)$):

$1 =linux

$2 =root

$3 =0012127773456

你如何通过正则表达式来完成这样的解析?

点赞
用户888731
用户888731

这是你的模式:^bt_(\w+?)_(\w+?)_(\d+)$

它有三个捕获括号。每个括号捕获所需的部分。

我使用了 ?,它是非贪婪定量器,所以单词搜索会在遇到第一个下划线时结束。\w 搜索字母、数字和下划线,我不想让它将下划线视为单词的一部分。

2017-01-23 07:52:53