ゼロ幅の否定先読みアサーションはRでどのように機能しますか?
strsplit('abc dcf', split = '(?=c)', perl = T)
の出力が期待されます。
私はそれが前の最後の文字ならばsplitedされないだろうと思っbecasue私の期待が
[[1]]
[1] "a" "b" "c " "d" "cf"
ありながら、しかし、
strsplit('abc dcf', split = '(?!c)', perl = T)
の出力は
[[1]]
[1] "a" "b" "c" " " "d" "c" "f"
ですチャンクはチャンクc
に一致します。否定的な先読みに対する私の理解は間違っていますか?
を試すことができます(?<!C)'否定後読み、ない '(?!C)' – Toto
@Totoで否定先読みです。それは問題ではないようです。 'strsplit( 'abc dcf'、split = '(?<!c)'、perl = T)'と同じ出力を出力します。 ) 'あなたのコメントに基づいて少し質問を編集しました。 – mt1022
それが肯定的であるか否定的な先読みであるかは本当に重要ではありません。重要なのは、 'strsplit'が長さゼロのマッチを扱う方法です。 –