[過去ログ] + JavaScript の質問用スレッド vol.124 + (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
104(3): (ワッチョイ f6c3-9IQd [159.28.152.184]) 2021/11/22(月)23:07 ID:+p8qnn8E0(3/3) AAS
>>103
置換した具体例で言うと例えば
さっきの例で置換部分が
result=orgCSV.replace(keyName, "ほげ");
元のテキストが下記だとすると
<title>[name]</title>
結果が下記になってしまってなんじゃこりゃ…て感じですね
<titlほげ>[ほげaほげほげ]</titlほげ>
正規表現オブジェクトを使わなければ普通に成功します
result=orgCSV.replace("[name]", "ほげ"); //<title>ほげ</title>になる
省1
105(1): (ワッチョイ 4e61-9IQd [153.160.97.54]) 2021/11/22(月)23:44 ID:yUT2zM6b0(2/2) AAS
>>104
tempKey="\\["+key+"\\]";
107(1): (ワッチョイ 8b01-wksM [126.74.75.203]) 2021/11/23(火)00:04 ID:KUvc8h5G0(1/2) AAS
>>104
[] は文字クラス
外部リンク:developer.mozilla.org
更に、keyにメタキャラクタがあれば同じ事になるので、文字列全体をエスケープすべき
外部リンク:developer.mozilla.org
上記は正規表現の基本
正規表現を体系的に学習すれば、絶対に気がついたこと
急がば回れ
114: (ワッチョイ 4e2c-C1KD [153.136.94.40]) 2021/11/23(火)08:34 ID:Ln8GWMq+0(1) AAS
>>104
Ruby では、Regexp.escape で、
正規表現において、特別な意味を持つ文字の直前に、
エスケープ文字(バックスラッシュ)を挿入した、文字列を返す
p esc_1 = Regexp.escape( "[-a]" ) #=> "\\[\\-a\\]"
reg_1 = Regexp.new( esc_1 )
p reg_1.match( "x[-a]y" ) #<MatchData "[-a]">
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.029s