2011-03-07 5 views
1

数字またはスペース+数字が続くことがない限り「一致」したい - 否定的な先読みを使用しないで(私が知る限り、C doesnこれをサポートしていない - 私が間違っているなら、私を修正してください)。数字またはスペース+数字の後に一致しない単語の一致

ありがとうございます!

+2

C? Cには標準の正規表現ライブラリがありません。 – kennytm

+0

あなたの主張は何ですか? –

+0

ポイント(私は疑う)は、正規表現パターンの答えはおそらく正規表現ライブラリなしでは役に立たないということです。あなたは正規表現ライブラリを使用しているように質問の言葉から、それは聞こえません。あなたは正規表現のパターンを求めていますか? –

答えて

0

あなたがCではなく、正規表現せずに、整合を書きたい場合は、あなたがのctype.hでisspace()isdigit()isalpha()を見てみたいことがありますあなたが持っている文字列を一致させたい

0

あなたその中の条件?

編集 - 読んでいない?この作品

use strict; use warnings; 

my @samps = (
' on', 
' on9', 
' on ', 
' on 5', 
' on 7', 
' on p', 
' on6 ', 
); 

for (@samps) { 
    if (/on([^\d ]|[ ](\D|$)|$)/) { 
     print "matched '$_'\n"; 
    } 
    else { 
     print "'$_' failed\n"; 
    }  
} 

出力

matched ' on' 
' on9' failed 
matched ' on ' 
' on 5' failed 
matched ' on 7' 
matched ' on p' 
' on6 ' failed 
1

- 非常によく

編集[OK]を、ここにyaは

/on([^\d ]|[ ](\D|$)|$)/

テストケースをバディ行きます

+0

スペースでは数字にマッチするので、正のマッチを探している場合は、そうしないでください。 – sln

関連する問題