如何通过正则表达式屏蔽输入?1112223333或1112223333444

jor*_*dan 7 c# regex xaml visual-studio-2010

这是在一个xaml文件中.

我需要用正则表达式掩盖一个框的输入.

我需要它包含10个数字或13个数字(按顺序,没有符号)

我有 :

<... ValidationRegEx="\d{13}" />
Run Code Online (Sandbox Code Playgroud)

哪个工作正常,但是当我想添加十个面具时,它会断开:

<... ValidationRegEx="\d{13} | \d{10}" />
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

das*_*ght 8

我应该删除空格,如下所示:

ValidationRegEx = "\d{13}|\d{10}"
Run Code Online (Sandbox Code Playgroud)

否则,空格字符将成为您匹配的字符串的一部分(即13个数字后跟空格,或空格后跟10个数字).

您也可以尝试简化表达式,如下所示:

ValidationRegEx = "\d{10}\d{3}?"
Run Code Online (Sandbox Code Playgroud)

(需要十加三个可选数字).

  • @ jordan.peoples \是一个逃脱角色.A \\逃脱了逃脱. (2认同)

jor*_*dan 0

这对我有用:

< ... RegEx="\b\d{10}\b|\b\d{13}\b" ... />
Run Code Online (Sandbox Code Playgroud)

这代表“用 10 位数字找到一个完整的单词,或者用 13 位数字找到整个世界”。

正则表达式前后的 \b 表示查找整个单词。

查看这个教程网站,它帮助我回答了我自己的问题:

http://www.codeproject.com/Articles/9099/The-30-Minute-Regex-Tutorial