基本的正则表达式16位号码 [英] Basic regex for 16 digit numbers

查看:152
本文介绍了基本的正则表达式16位号码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我现在有一个正则表达式,拉了一个16位的数字从一个文件中,例如:

正则表达式:

  Regex.Match(L,@\ D {16})
 

这将很好地工作了数如下:

  

1234567891234567

尽管我怎么可能还包括在正则表达式的数字,如:

  

1234 5678 9123 4567

  

1234-5678-9123-4567

解决方案

如果所有的组都始终为4位长:

  \ B \Ð{4} [ - ] \ D {4}?[ - ] \ D {4}?[ - ]?\ d {4} \ b
 

要确保分隔符是相同​​的群体之间的:

  \ B \Ð{4}(| |  - )\ D {4} \ 1 \ D {4} \ 1 \ D {4} \ b
 

I currently have a regex that pulls up a 16 digit number from a file e.g.:

Regex:

Regex.Match(l, @"\d{16}")

This would work well for a number as follows:

1234567891234567

Although how could I also include numbers in the regex such as:

1234 5678 9123 4567

and

1234-5678-9123-4567

解决方案

If all groups are always 4 digit long:

\b\d{4}[ -]?\d{4}[ -]?\d{4}[ -]?\d{4}\b

to be sure the delimiter is the same between groups:

\b\d{4}(| |-)\d{4}\1\d{4}\1\d{4}\b

这篇关于基本的正则表达式16位号码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆