0

入力は、%'letter' セパレーター %'letter' などの形式のデータを受け入れます。

区切り文字には、スペース、タブ、コロン、または改行を使用できます

例:

%d %F %S   
or     
%d:%F:%S    
or    
%d:%F
%S

「%」の後の文字は任意の文字にすることができます

次のようなものを書くことはできません:

%dddd %F %S
or 
%%d %F %S

これまでのところ、私はこれを行ってきました:

^((%([a-zA-Z]){1})+\s?|:)+$

どんな助けでも大歓迎です。

4

2 に答える 2

2

どうですか

^((%[A-z])(\s|:))*(%[A-z])$

http://regexr.com?37626

于 2013-11-13T13:38:41.357 に答える
1

あなたはこれで行くことができます

(%[a-zA-Z][ \t\n;])*%[a-zA-Z]

正規表現の視覚化

ただし、大文字と小文字を区別しないフラグをマッチャーに渡すことをお勧めします。次に、式を次のように短縮できます。

(%[a-z][ \t\n;])*%[a-z]
于 2013-11-13T13:39:20.747 に答える