0

これは前の質問のフォローアップです。"Test 999-99-9" という文字列がありますが、最後の -9 部分を除いてどのように一致させることができますか? 最後の -9 は存在する場合と存在しない場合がありますが、存在する場合は無視して残りの文字列と一致させたいと考えています。助言がありますか?

あるいは、999-99-9 または 999-99 の部分全体を無視して、"Test" の部分だけを返した場合でも問題ありません。そのほうがやりやすいかも。基本的に、次の式を逆にして文字列の残りの半分を返したいと思います: (\d{3}-\d{2}|\d{3}-\d{2}-\d{1} )$

4

2 に答える 2

0

^(Test \d{3}-\d{2})(-\d{1})?$「-9」が存在するかどうかに関係なく、例の最後の「-9」を除くすべてを返します。

于 2012-07-06T13:46:38.983 に答える
0

999-99-9 を無視して "Test" 部分だけを返す正規表現:

^([\w ]+) [\d]{3}-[\d]{2}-?[\d]?$

OCR ソフトウェアは、次のグループをサポートしています。

http://www.laserfiche.com/NewsPortal/Article/2012/05/21/tech-tip-pattern-matching-with-regular-expressions

注: 括弧は、テキストから抽出される情報を決定します。他の文字は、検索されるパターンを決定します。たとえば、\d\d\d-\d\d-(\d\d\d\d) は社会保障番号を検索し、その下 4 桁を返します。

于 2012-07-06T13:52:54.933 に答える