0

ああ、私はコードラボで正規表現をやっています。社会保障番号を含む行を選択する正規表現を書いてください (純粋な 9 桁の形式、dddddddddd、または標準的な方法でハイフンで分割: ddd-dd-dddd)。二重引用符で解決してください。」

私はそれをコーディングしましたが、「Remarks:Problem: ^\d{3}[- ]?\d{2}[- ]?\d{4}$ Accepted:87231-6449」というエラーが表示されます。だから私はxxx-xx-xxxxを持つでしょう

 "^\\d{3}[- ]?\\d{2}[- ]?\\d{4}$"
4

2 に答える 2

0

現在の正規表現^\d{3}[- ]?\d{2}[- ]?\d{4}$では、指定された位置にハイフンまたは空白を任意に表示するかどうかを指定できます。すべてのハイフン/スペースがすべて表示されるか、すべて表示されないようにする必要はありません。

上記の 2 形式の社会保障のみを受け入れたい場合は、次の正規表現を使用できます。

^(\d{3}-\d{2}-\d{4}|\d{9})$

文字列エスケープ シーケンスを追加した後:

"^(\\d{3}-\\d{2}-\\d{4}|\\d{9})$"
于 2012-09-19T00:06:27.600 に答える
0

^\d{3}-?\d{2}-?\d{4}$:ハイフンはすべて任意(ハイフンの有無の組み合わせは自由)

^(\d{3}-\d{2}-\d{4}|\d{9})$: ハイフンありまたはハイフンなしのみ許可

于 2012-09-19T00:06:38.210 に答える