0

Google Refine でテキスト ファサードの正規表現を照合する必要があります。式を試してみましたが、うまくいきませんでした。次に、www.lenovo.com で文字列 lenovo を一致させる簡単なケースを試しました。

value.match(/lenovo/)

一部の行では、私の値は値を取りwww.lenovo.com

このような単純な文字列の一致が、Google の絞り込みで機能しないのはなぜですか。私はWindowsで実行しています。

明らかな構文エラーがある場合はお知らせください。

4

2 に答える 2

0

あなたは何を取り戻し、何を取り戻したいですか?

match() 関数の戻り値は、一致しない場合は null または配列のいずれかです。

ヘルプタブには次のように書かれています:

一致 (文字列または正規表現) 戻り値: 文字列の配列 指定された正規表現に一致するグループの配列を返します

「lenovo」の入力値の場合、
この関数 は次のvalue.match( /lenovo/ )
値を返す必要があります: []

これをファセットの True/False 値に変換して、そのテキスト文字列の有無をテストしますか? 次のようなことができます。

isNotNull( value.match( /lenovo/ ) )
于 2012-05-21T11:23:19.247 に答える
0

正規表現でグループを作成する必要があります。たとえば、次のようになります。

 value.match(/lenovo/)

その結果:

 []

次のようにする必要があります。

 value.match(/(lenovo)/)

その結果:

 ["lenovo"]

これはおそらくあなたが望むものに似ています。次に、配列にインデックスを付けて文字列値を取得できます。

  value.match(/(lenovo)/)[0]
于 2013-01-31T21:40:04.027 に答える