• 締切
  • 困ってます

正規表現のパターン

  • 質問No.5619355
  • 閲覧数28
  • ありがとう数3
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 0% (0/20)

<value:type>1</value:stype>
<item:img url="http://hoge/"></item:img>
<description>hogehoge
hogehoge
</description>

みたいなXMLの「value:」と「item:」を「」に置換(消す)して、「description」の改行文字を削除したいのですが、どのようなパターンになるのでしょうか?

回答 (全1件)

  • 回答No.1

ベストアンサー率 65% (189/287)

急がばまわれというカンジで
一発の正則表現でやろうとせずに
おとなしく置き換えを2回にわけ
置き換えメソッドを使って

var str="元の文字列"
var CR=String.fromCharCode(13)
var reg1=new RegExp("(value:)?(item:)?","g")
var reg2=new RegExp("(?<=\<description\>).*(?=\<\/description\>)","gs")
str=str.replace(reg1,"")
str=str.replace(reg2,repFnc)
function repFnc(str,ind,allStr):String{
return str.replace(new RegExp(CR,"g"),"")
}


結果

<type>1</stype>
<img url="http://hoge/"></img>
<description>hogehogehogehoge</description>


うまいこといったようです

改行の消去がうまくいかなかったらとりあえず
\nにするかキャラコードを10にするかで多分なおるはず
強制改行か改段落かの違いです
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ