-PR-
解決
済み

文字列後にあるスペースを削除

  • すぐに回答を!
  • 質問No.9594
  • 閲覧数299
  • ありがとう数5
  • 気になる数0
  • 回答数5
  • コメント数0

お礼率 35% (34/97)

たとえばですね...
JavaScript内の変数に"abc  "のように文字列の後側にスペース(1バイト文字)が
入っていた場合、スペースを取り除き"abc"という文字列にする
関数をご存知ないでしょうか?
通報する
  • 回答数5
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル6

ベストアンサー率 55% (5/9)

正規表現でこんなんどうでしょう?
ただ IE4/NN4以上が対象のはずです(未確認)

str = "abc ";
document.write("|" + str.replace(/ $/g, "") + "|<BR>");
※|は単にスペースが消えているかをチェックするために付けているだけです(笑)

これで文末($)の連続する(g)スペースを""に置換しています。
str.replace(/ $/g, "")

正規表現を駆使すればもっといろいろできるはずです。
詳しくは正規表現関連を・・・(^^;
-PR-
-PR-

その他の回答 (全4件)

  • 回答No.1

たぶんこれでできると思いますが、 HTMLって、複数の空白って、1つに してしまうのでは? <SCRIPT language="JavaScript"> var str = "abc "; window.document.write("",str,"<BR>"); len ...続きを読む
たぶんこれでできると思いますが、
HTMLって、複数の空白って、1つに
してしまうのでは?

<SCRIPT language="JavaScript">
var str = "abc ";
window.document.write("",str,"<BR>");
len = str.length;
for(i = len-1; i >= 0; i--)
{
var character = str.charAt(i);
if(character == " ")
{
continue;
} else {
break;
}
}
window.document.write("",str);

だめなときは補足してください。
ではでは☆
  • 回答No.3
レベル6

ベストアンサー率 55% (5/9)

自分に対して情けないレスです(^^; よく考えたら str.replace(/ $/g, "") では文最後のスペース1文字分しか変換できてませんね(苦笑)gオプションの意味もないし。 うーむ。お役に立てなくて m(_ _)m #ちゃんとテストしてから書き込まないといけないっすね
自分に対して情けないレスです(^^;
よく考えたら
str.replace(/ $/g, "")
では文最後のスペース1文字分しか変換できてませんね(苦笑)gオプションの意味もないし。

うーむ。お役に立てなくて m(_ _)m

#ちゃんとテストしてから書き込まないといけないっすね
  • 回答No.4
レベル12

ベストアンサー率 35% (146/413)

JavaScriptで正規表現をあまり使わないので自信は無いんですが... 正規表現は "\s*$" になります。 これを "" と置換すればよいわけで、 mmlさんの関数を使うとすると  str.replace(/\s*$/g, "") になるんでしょうかね
JavaScriptで正規表現をあまり使わないので自信は無いんですが...

正規表現は "\s*$" になります。
これを "" と置換すればよいわけで、
mmlさんの関数を使うとすると
 str.replace(/\s*$/g, "")
になるんでしょうかね
  • 回答No.5
レベル12

ベストアンサー率 35% (146/413)

不安になったので自分で試してみました。 やっぱり私の回答は間違いでした...。 正規表現には "\s+$" が適当で、 関数も  str.replace(/\s+$/g, "") で動作しました。 たとえば...  aaa = "hoge ";  bbb = aaa.replace(/\s+$/g, " ...続きを読む
不安になったので自分で試してみました。
やっぱり私の回答は間違いでした...。

正規表現には "\s+$" が適当で、
関数も
 str.replace(/\s+$/g, "")
で動作しました。

たとえば...

 aaa = "hoge ";
 bbb = aaa.replace(/\s+$/g, "");

とすると、bbb の中身は "hoge" になります。
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

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

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ