問題タブ [oniguruma]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
regex - 正規表現/テキストメイトの混乱
Textmate スニペットを作成しようとしていますが、いくつかの問題に遭遇しました。基本的に、名前を入力して、その部分に分割したいと思います。
例、
ビル ゲイツ: (ビル)、(ビル)、(ゲイツ)、(ゲイツ)、(ビル ゲイツ)、(ビル ゲイツ)、(ビル ゲイツ)、(ビル ゲイツ)
編集**
したがって、プログラミング言語を使用していれば、これらの結果を非常に簡単に生成できることは間違いありません。たとえば、単語を分割し、大文字または小文字の関数を呼び出して、この出力を生成することができます。
しかし、私の状況では、Textmate とその正規表現機能を使用してタブ スニペットを作成しています。doit などのトリガー キーを入力し、Tab キーを押してからユーザー名を入力します。次に、上記の出力が作成されます。これで時間の節約になるわけではありませんが、Textmate でこの種のものに頻繁に出くわし、それを理解したいと思っています。
私はこれを参考にしていますが、正規表現を使用して単語を選択し、値を大文字と小文字にする方法はまだわかりません (\u \U \l \L)
ruby - 鬼車正規表現を使用して有効な文字プロパティを指定するにはどうすればよいですか?
ルビー1.8でユニコード対応の正規表現を取得するために鬼車ジェムを使用しています。\p{M}
構文のドキュメントによると、コード ポイントを Mark プロパティと使用または\p{Mark}
一致させることができるはずです。
ただし、次のことを行うと
私は得るArgumentError: Oniguruma Error: invalid character property name {M}
。{Mark}
を使用した場合、または をサポートする他の構文のいずれかを使用した場合、同じエラーが発生します\p
。
私は何を間違っていますか?鬼車正規表現を使用して有効な文字プロパティを指定するにはどうすればよいですか?
更新 - UTF16 エンコーディングのいずれかを使用すると、正規表現がコンパイルされます。しかし、私の文字列はUTF8であるため、役に立ちません。だから私の質問は次のようになります: UTF-8鬼車正規表現を使用して有効な文字プロパティを指定するにはどうすればよいですか?
regex - 正規表現の問題-Textmateを転送せず、後方に細かく
私は正規表現があまり得意ではありませんが、Textmateでは、次のようなXMLファイルの複数行をクリアしようとしています。
これを正規表現の検索/置換で使用しています。
上記は複数回発生しますが、検索を行うと、最初のノードが検索され、ファイル内の最後まで外部ノードを含むその間のすべてが選択されます。
最後の行から前(後方)を検索すると、ブロックが正しくキャプチャされます。ここで何が間違っているのかわかりません。誰かがこれを行うためのはるかに効率的な方法を提案するかもしれません。
ありがとう。
ruby - =~ 演算子に副作用があるのはなぜですか?
Ruby/Oniguruma の副作用に気付きましたが、これは一見同等に見える 4 つのステートメントのうち 1 つにしか存在しません。変数が でday
定義されているのに、またはで定義され009
ていないのはなぜですか?003
005
007
注意事項 1: 4 つのケースすべてで同じ正規表現と同じ文字列です。
注 2: MS Windows と Ubuntu Linux での動作を確認しました。
regex - 正規表現を使用して単語のない行を削除するにはどうすればよいですか?
textmateを使用してファイルを編集しています。単語を含まないすべての行を削除したいと思います。これが例です。
正規表現を使用して、「パッド」という単語を含まないすべての行を削除し、この結果を取得するにはどうすればよいですか?
皆さんありがとう。
ruby - ?との正規表現 パッシブグループ内の数量詞?
SQL用のTextMate文法を編集しています。現在、正規表現があります(明確にするためにキーワードは省略されています)。
これは、次のような関数定義と正しく一致します
処理したかったCREATE OR REPLACE
ので、正規表現をに変更しました
とは一致しませCREATE
んCREATE OR REPLACE
。新しいオプションのグループもパッシブにすることで修正しました。
しかし..なぜ以前は一致しなかったのですか?私はそれが一致することを期待しますが、それから私が予期していなかったキャプチャグループを私に与える可能性があります(外側のパッシブグループインジケーターが新しい内側のグループに流れ落ちない場合)。
ruby - Ruby 1.9の正規表現は、文脈自由文法と同等に強力ですか?
私はこの正規表現を持っています:
複数の文字列に対してテストすると、再帰を適切に処理するため、文脈自由文法と同じくらい強力に見えます。
「FunwithRuby1.9 Regular Expressions」には、次のように文脈自由文法のように見えるように、実際に正規表現のすべての部分を配置する例があります。
正規表現の一部を再配置するための彼の手法と、再帰的な名前付きキャプチャグループの例との間で、これは、Ruby 1.9の正規表現が文脈自由文法と同等の能力を持っていることを意味しますか?
regex - Textmateの検索とワイルドカードによる置換
これが私が数百の場所に持っているもの[:admin, @account]
です。私がやりたい[:admin, ]
のは、残っているものがすべて、@account
または私がそこに持っているオブジェクトになるように削除することです。時々それは[:admin, ticket]
またはですので[:admin, group]
。
正規表現を使用して、ラップされたブラケット([]
)とを削除することは可能:admin,
ですか?
ruby - カンマ区切りのリストをRuby正規表現と一致させる
次の文字列を前提として、リストの要素とコロンの後の残りの部分を一致させたいと思います。
foo、bar、baz:何か
つまり、最初の3つのマッチグループは「foo」、「bar」、「baz」であると予想しています。カンマもコロンもありません。要素の最小数は1であり、任意の数にすることができます。空白や小文字は使用しないと想定します。
私はこれを試しましたが、これは機能するはずですが、何らかの理由ですべての一致グループにデータが入力されません。
^([a-z]+)(?:,([a-z]+))*:(something)
これは、\1のfooと\2のbaz(または最後の要素が何であれ)に一致します。バーのマッチグループがない理由がわかりません。
何か案は?
編集:それが重要な場合は、Ruby1.9.3。
EDIT2:Rubularリンク:http ://rubular.com/r/pDhByoarbA
EDIT3:リストに一致させようとしているだけではないので、最後にコロンを追加します。申し訳ありませんが、問題を単純化しすぎています。