2012-03-15 9 views
2

他の文字(たとえば11100011/100010-01110a0011100b)で区切られたバイナリ文字列で011の出現回数を調べようとしています。だから私はどこでも私のコードで分割関数を使用するallcharacters - [0,1]と言う必要があります。どのように私はあなたが^でそれを付けることによって設定された文字を反転させることができPerlで0と1以外のすべての文字の正規表現

+0

私は単純に文字列の011と一致しますが、すべての文字列を考慮します。私はデリミタからバイナリ文字列を分離できませんでした。ですから、もし0と1以外の正規表現のallcharsでsplit関数を使い、各バイナリ文字列を配列の要素に取る方法を知ることができたら、 – erogol

答えて

7

...正規表現でそれを言うことができる:

[^01] 

をただし、この場合、あなたはsplitを全く使用する必要はありません:

my @binary_strings = $input =~ m{[01]+}g; 
+0

m {[0-1] +} gここで機能する 'g'は何ですか? – erogol

+2

正規表現は最初の正規表現だけではなく、すべての一致を返すようにします。 – duskwuff

+0

私は '0'と' 1'の間にハイフンを使用するのかどうかは分かりません。実際には2人の間に何かがあるようなわけではありません。 – tchrist

関連する問題