これはxamlファイル内にあります。
ボックスの入力を正規表現でマスクする必要があります。
10個または13個の数字を含める必要があります(順番に、記号なし)
私は持っています :
<... ValidationRegEx="\d{13}" />
これは問題なく動作しますが、10のマスクを追加したい場合、壊れます:
<... ValidationRegEx="\d{13} | \d{10}" />
何か案は?
これはxamlファイル内にあります。
ボックスの入力を正規表現でマスクする必要があります。
10個または13個の数字を含める必要があります(順番に、記号なし)
私は持っています :
<... ValidationRegEx="\d{13}" />
これは問題なく動作しますが、10のマスクを追加したい場合、壊れます:
<... ValidationRegEx="\d{13} | \d{10}" />
何か案は?
次のように、スペースを削除する必要があります。
ValidationRegEx = "\d{13}|\d{10}"
それ以外の場合、スペース文字は一致する文字列の一部になります(つまり、13桁の後にスペース、またはスペースの後に10桁)。
次のように式を単純化することもできます。
ValidationRegEx = "\d{10}\d{3}?"
(10と3つのオプションの数字が必要です)。
これは私のために働いたものです:
< ... RegEx="\b\d{10}\b|\b\d{13}\b" ... />
これは、「10桁の単語全体を検索するか、13桁の世界全体を検索する」ことを表します。
正規表現の前後にある\bは、単語全体を検索することを意味します。
私自身の質問に答えるのに役立ったこのチュートリアルサイトをチェックしてください:
http://www.codeproject.com/Articles/9099/The-30-Minute-Regex-Tutorial
┌─────┬─ 10 or 13 digits
↓ ↓
ValidationRegEx = "(?<!\d)\d{10}\d{3}?(?!\d)"
↑ ↑
│ └─ negative lookahead to ensure
│ there is no other digit ahead
│
└─ negative lookbehind to ensure
there is no other digit behind