問題タブ [word-boundary]
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 - grep/egrep を使用して、ファイル内で繰り返される単語を見つけるにはどうすればよいですか?
unix (bash) で egrep (または grep -e) を使用して、ファイル内で繰り返される単語を見つける必要があります。
私は試した:
と
しかし、何らかの理由で、これらはそうではない繰り返しであると見なされます! たとえば、単語境界条件\>
orにもかかわらず、文字列 "word words" が基準を満たしていると見なし\b
ます。
regex - vim の正規表現構文に 2 つの単語境界があるのはなぜですか?
Javascript の正規表現構文には、単語境界が 1 つしかありません: \b
.
Vim の正規表現構文には、(\<
単語の開始) と\>
(単語の終了) の 2 つがあります。
vimスタイルの単語境界で達成できるが、javascriptスタイルでは達成できなかった検索の例を誰か教えてもらえますか?
それとも、単一の単語境界を持つ正規表現構文でも同じように機能しますが、開始境界と終了境界を持つことには他の利点がありますか?
java - BreakIterator に「'tis」を単語として認識させることはできますか
を使用するBreakIterator.getWordInstance()
と、テキスト"can't"
は 1 つの「単語」と見なされます
少し実験すると、単語内のアポストロフィは単語の一部と見なされます。両端のアポストロフィは、単語とは別のものと見なされます。つまり、アポストロフィと文字の間で単語の境界が報告されます。
これにより、 や のような単語"'tis"
は"dogs'"
、綴りが正しくても、「単語」と見なされなくなります。
この動作を修正する方法はありますか、それともバグですか?
regex - 正規表現 - 境界を使用して単語を除外する際の問題
私の認証 Web サイトでは、正規表現を使用してブラックリストのパスワードを制御しています。(ブラックリストに登録されたパスワードの例: 12345678、123456789、野球、フットボール)
単語 (ブラック リストに登録されたパスワード) を除外する新しい正規表現ルール (境界を使用) を追加したいと思います。私は StackOverflow に関するいくつかの同様の質問を読み、次のようなもので宣言しようとしました:
この正規表現は上記の単語と一致しません。正しいです。たとえば、文字、数字、または特殊文字 (「baseball」の前後) を含む「Baseball」は一致する必要があります。
しかし、「baseball! 」は「 !baseball 」とは逆に一致しません。やり方を教えてください。
regex - 単語境界の端と端の正規表現の違い
正規表現のRヘルプファイルは言う
記号 \< と \> はそれぞれ、単語の先頭と末尾の空の文字列に一致します。記号 \b は、単語の端にある空の文字列に一致します
(単語の) 端と端の違いは何ですか?
javascript - 正規表現の単語境界は発音区別符号では機能しません
チェックする次の入力があると仮定します。
および次の JavaScript 正規表現:
私が期待しているのは、「ipsu」または「ipsü」のいずれかであるが単語境界で一致を検索しているため、何も見つからないことです。ただし、「ipsü」という単語は、末尾に「m」という文字があり、単語の境界がない場合でも一致します。理由がわかりません。
誰も理由を知っていますか?
次の例を参照してください。