.net 定位字母I后跟空格,然后三个字母数字后跟空格

.net 定位字母I后跟空格,然后三个字母数字后跟空格,.net,vb.net,regex,.net,Vb.net,Regex,需要找到以下模式: 字母I后面跟一个空格,然后三个字母数字后面跟一个空格 “我爱你” “我是H21” “我是31M” 这些项目后面还有一个lat/lon,由以下表达式捕获: Dim regex作为新的regex(“\d{6}\d{7}”) 是否可以组合这些表达式以返回如下所示的匹配项: “H21###############” 谢谢 戴夫 匹配组1将包含三个字母数字加上您已经用其他正则表达式捕捉到的数字 编辑:不起作用,因为问题中描述的模式没有反映作者最初的意思。真正的意思首先在评论中得到澄清

需要找到以下模式:

字母I后面跟一个空格,然后三个字母数字后面跟一个空格

“我爱你” “我是H21” “我是31M”

这些项目后面还有一个lat/lon,由以下表达式捕获:

Dim regex作为新的regex(“\d{6}\d{7}”)

是否可以组合这些表达式以返回如下所示的匹配项:

“H21###############”

谢谢

戴夫

匹配组1将包含三个字母数字加上您已经用其他正则表达式捕捉到的数字

编辑:不起作用,因为问题中描述的模式没有反映作者最初的意思。真正的意思首先在评论中得到澄清

匹配组1将包含三个字母数字加上您已经用其他正则表达式捕捉到的数字

编辑:不起作用,因为问题中描述的模式没有反映作者最初的意思。真正的意思首先在评论中得到澄清。

/I([0-z]{3}\d{6}\d{7})/

我不知道VB,但是正则表达式可以和perl一起工作

更新:
鉴于提供的新字符串。。类似的方法可能有效(取决于对我问题的回答)


/^[A-z]([0-z]{3})[A-z][0-z]{3}L(\d{6}\d{7})/

然后将加入匹配项(匹配项1包含AAA,匹配项2包含Lat/Long)

更新#2:
来自OP:模式上没有。唯一的模式是I AAA,然后在同一行上4000931 0892006。你能在表达式中添加OR语句吗

你可以添加一个OR,但我不确定这是否真的是你想要的? 这个新的正则表达式将匹配I,后跟一个空格,后跟3个字母数字字符,然后是“anything”,以及lat/long。请注意,如果文件中有数据或您正在解析的任何内容与这样一行匹配(即它是“其他”数据,但遵循类似的模式),您可能也会捕获到它


/^I([0-z]{3})。*(\d{6}\d{7})/

/I([0-z]{3}\d{6}\d{7})/

我不知道VB,但是正则表达式可以和perl一起工作

更新:
鉴于提供的新字符串。。类似的方法可能有效(取决于对我问题的回答)


/^[A-z]([0-z]{3})[A-z][0-z]{3}L(\d{6}\d{7})/

然后将加入匹配项(匹配项1包含AAA,匹配项2包含Lat/Long)

更新#2:
来自OP:模式上没有。唯一的模式是I AAA,然后在同一行上4000931 0892006。你能在表达式中添加OR语句吗

你可以添加一个OR,但我不确定这是否真的是你想要的? 这个新的正则表达式将匹配I,后跟一个空格,后跟3个字母数字字符,然后是“anything”,以及lat/long。请注意,如果文件中有数据或您正在解析的任何内容与这样一行匹配(即它是“其他”数据,但遵循类似的模式),您可能也会捕获到它


/^I([0-z]{3})。*(\d{6}\d{7})/

I AAA B SP2 L 400931 0892006 V 006 00 J SPI'LOGAN CO 10233 10817703-我试图从上面的字符串中捕获的文本是AAA和400931 0892006。我没有收到任何返回的匹配项。对不起,Lat和Lon 400931 0892006之前没有**。我们试图从中挖掘的字符串是。I AAA B SP2 L 400931 0892006 V 006 00 J SPI’LOGAN CO 10233 10817703此输入与您原始帖子中描述的模式不匹配。这就是为什么你看不到匹配的原因。如果从一开始就有这些信息就好了。我AAA B SP2 L 400931 0892006 V 006 00 J SPI'LOGAN CO 10233 10817703-我试图捕获的文本是上面字符串中的AAA和400931 0892006。我没有收到任何返回的匹配项。对不起,Lat和Lon 400931 0892006之前没有**。我们试图从中挖掘的字符串是。I AAA B SP2 L 400931 0892006 V 006 00 J SPI’LOGAN CO 10233 10817703此输入与您原始帖子中描述的模式不匹配。这就是为什么你看不到比赛的原因。如果从一开始就有这样的信息就好了。
I ([a-zA-Z\d]{3} \d{6} \d{7})