dポイントプレゼントキャンペーン実施中!

お世話になります。

JSP内で、以下の正規表現で、文字列の行先頭と行末尾の
半角スペースを、置換を利用してTrim機能を実現しています。

var obj1 = document.getElementById("chaText").innerText;
var obj1b = obj1.replace(/^\s+|\s+$/g, "");
document.getElementById("chaText").innerHTML = obj1b;

そこでご質問させてください。
上記2行目において、
obj1.replace(/^\s+|\s+$/g, "");
という置換を実施していますが、
このreplace引数文字列の1文字目である
/(スラッシュ)文字の意味を教えてください。

(他の各文字列につきましては調べが付きましたが、
 この/(スラッシュ)文字を、ここに記述している意味だけが
 不明の為・・・)

以上になります。
よろしくお願い致します。

A 回答 (2件)

正規表現オブジェクト(RegExp)を生成するリテラルのようなものです。


var regExp = new RegExp("^\\s+|\\s+$","g")
var obj1b = obj1.replace(regExp, "");
と書くのと同じ意味になります。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
おかげさまを持ちまして、良く理解できました。
また機会がございましたら、
よろしくお願いします。

PS:
いつもだと、いずれかの回答を
ベストアンサーで選択させていただいているのですが、
今回ご回答いただきましたお二人とも、
私にとりましては同じぐらいのベストアンサーだった為、
あえて今回はベストアンサーを選択しないで、
この質問を締め切らせていただきますので、
よろしくお願い致します。

最後になりますが、お二人とも、
本当にいつもお世話になっております。
ご回答ありがとうございました。

お礼日時:2011/04/28 10:01

JSPというか、該当部は事実上JavaScriptですかね?



正規表現が当たり前とも言える、Perl,Rubyなどの記法をそのまま受け継いだものですね。

/^\s+|\s+$/g

 / ^   \s+       |  \s+    $      / g
{ 行頭に続く空白1個以上 もしくは 空白1個以上(行末に続く) } を全て置換え対象とする。

  ↑すみません、空白の間隔がうまく調節できなくてずれてます(T T)
ぐらいの感じです。


まぁようするに /ほげほげ/ と2つ1組です。
言語によっては {ほげほげ} とか ~ほげほげ~ とか
人間が対と認知可能な相当多くの記号の組み合わせを受け入れているものもありあmす。

Perl、正規表現などの検索で調べたほうが早いかもしれないですね。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
おかげさまを持ちまして、良く理解できました。
また機会がございましたら、
よろしくお願いします。

PS:
いつもだと、いずれかの回答を
ベストアンサーで選択させていただいているのですが、
今回ご回答いただきましたお二人とも、
私にとりましては同じぐらいのベストアンサーだった為、
あえて今回はベストアンサーを選択しないで、
この質問を締め切らせていただきますので、
よろしくお願い致します。

最後になりますが、お二人とも、
本当にいつもお世話になっております。
ご回答ありがとうございました。

お礼日時:2011/04/28 10:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!