• ベストアンサー

javascriptで文字列の差分を取得

Hanagefactoryの回答

回答No.2

StringならcharAt()で文字が取れるはずなので 与えられた文字列をloopさせて基準となる文字列と比較する、とかですかねー var a_str = "abc";//基準文字列 var a = 0;//基準文字列の比較する場所 var a_end = false;//基準文字列は最後まで到達したか var b_str = "abdec";//比較文字列 var changed_char = {};//変更された文字列を抜き出し //比較文字列を1文字ずつ比較していく for(var b=0;b<b_str.length;b++){ if(b_str.charAt(b) === a_str.charAt(a) && !a_end){ //変更がない場合 a++; //最後に追加された場合を考慮 if(a_str.length<=a){ a_end = true; } }else{ //変更があった場合 changed_char[b] = b_str.charAt(b); } } //変更分を出力 console.log(changed_char);

muuming2001
質問者

お礼

ありがとうございます。

関連するQ&A

  • Cシェルで、文字列中(str)に、固定文字列(abc)の数を数える方法

    Cシェルで、文字列中(str)に、固定文字列(abc)の数を数える方法を教えてください たとえば、 set str = abcdabceabcd set abc = abc str中に、abcを現れる数(3)を求める方法を教えてください Cシェルは詳しい方がいらっしゃいましたら、是非教えてお願いいたします

    • ベストアンサー
    • AJAX
  • javascriptでの文字列操作

    こんにちは。 javascriptでの文字列操作で躓いてしまったのでご教授ください。 例えば、 var str = "00000"; という文字列があったとして、これの2文字目を”1”に変更したいといった場合、javascriptではどのように操作するのが簡単でしょうか。 phpですと、 $str = "00000"; $str[1] = "1"; といった記述で操作できた記憶があるのですが、調べてみても同様の操作が見当たらず・・・。 文字列を分割して+で足すような感じの処理か、配列にして繰り返し処理といった感じになってしまうのでしょうか。 宜しくお願い申し上げます。

  • Excelで文字列の抽出をしたいので教えてください

    Excelで下記の文字列を抽出したいのですがどなたか教えてください 例) - abcdef xxxx ---- この場合任意の文字桁も不明で最初のブランクの後のabcdefを抽出 -- abc -- def zzz この場合任意の文字,桁も不明で2回目の'--'後のdefを抽出したいのですが宜しくお願いします

  • 文字列の切り出し

    文字列"abc.bcd.efg.hij"などから 最後のドットの前まで(例の場合"abc.bcd.efg"の部分) を切り出したいです。 どうすればよいかアイデアが出てきません。 ヒントだけでもいいので教えて下さい。 お願いします。

  • 文字列の最後の一字を削除

    string str; str=”abc壁xデスクトップyyy”;//一例 strから最後の一字を取り除くときに 最初から順番に各文字が2バイト文字か1バイト文字かを調べていき最後のバイトが2バイト文字の第2バイトと判明したときに最後の2バイトを除去し最後のバイトが1バイト文字と判明したときにstrの最後の1バイトを除去する ことによってできますがstrが膨大だと時間がかかります 文字列作成時に各文字が2バイト文字なのか1バイト文字なのかをメモっておくのも管理が大変ですし もっと早く最後の文字が1バイト文字なのか2バイト文字なのかを判定する方法は有りませんか?

  • 文字列の組合わせについて

    仕事でこまっています。できるだけ早めに教えていただけると幸いです。 ABCDEFという文字列があるとします。この文字列の組合わせのパターン とそのパターンがいくつあるかしらべたいと思っています。 パターン化する際の条件としては ■重複する文字列のパターンは除く AABCDFとかABBDFDなどは除いてください ■文字数は1文字から6文字までです。 A、Bという組み合わせからABCDEFまでの中からの組合わせになります。 ■順番については、違っていても同一のものとする。 ABCでもBCAでも同じ組合わせということになります。 またこういう作業をする際にどうやって算出するのかも併せて教えて いただけると助かります。 以上よろしくお願いいたします。

  • PHPの文字列をJavascriptの変数にする

    PHPの変数に格納された文字列を、直接Javascriptの変数の一部として格納しようと考えています。 例:) <script> var txt = "<?php echo $text; ?>"; </script> しかし、$textにダブルクォーテーションなどの文字が含まれていると、スクリプト全体が破綻します。今のところ、PHPの中で、問題を起こしそうな文字列を変換するように処理しています。 例:) $text = str_replace("\\", "\\\\", $text); $text = str_replace("\"", "\\\"", $text); $text = str_replace("\n", "\\n", $text); これよりもスマートな方法(たとえば用意されている関数を使うなど)がありますでしょうか。

    • ベストアンサー
    • PHP
  • jsで特定の位置から文字列を取得したい

    例えば、 ----------------------------- var hoge = 'name=Hanako&age=20&day=20'; ----------------------------- という文字列があったとして、 「age=」という文字列があった場合のみ、 「age=」の後ろ2文字をアラートで表示させたいのですが どのように組めば良いのでしょうか…。 ↓途中ですが、こんな感じで組んでいました。 ----------------------------- var kensaku = hoge.search(/age=/); if (kensaku !== -1) { var str2 = hoge.substring(10,5,kensaku.length); } ----------------------------- 初心者で恐縮ですが、ご教示の程よろしくお願い致します。

  • 日本語混じりの文字列の語数制限

    $str='abcおはようございます。ohayougozaimasu'; を最初から8文字取り出して文字列変数$str0に入れたいのですがどうしたらいいのでしょうか? 日本語と半角文字が混ざっているのできり方を間違えると大変なことになります

    • ベストアンサー
    • PHP
  • テキストファイルから文字列の表示

    あるテキストファイルを読み込んで、OPEN_"*.*"(_は空白、空白の長さは固定されていない/*はワイルドカード)という形の文字列から *.* だけをテキストボックスに表示させたいのですが、どなたか教えてください。当方、初心者で全然わからずに困っています。 例.ABC.txtの中身 OPEN "BLGCOMON.DAT" AS #1 LEN=32 FIELD #1,1 AS BLG1$,8 AS BLG2$,1 AS BLG3$,20 AS BLGDUM$,2 AS BLGDEV$ OPEN  "ABCDEF.TXT" AS #1 LEN=32 GET #1,1 LSET BLG1$="1" LSET BLG2$="WSKMMKY " MID$(BLGDUM$,1,6)=MID$((STR$(WKRC)),2) MID$(BLGDUM$,7,6)=ISAMDAT$ LSET BLGDUM$ = BLGDUM$   OPEN QWER$ PUT #1,1 CLOSE #1 このテキストファイル(ABC.txt)の場合、1行目の「OPEN "BLGCOMON.DAT"」と3行目の「OPEN  "ABCDEF.TXT"」が質問の文字列に当てはまります。テキストボックスには「BLGCOMON.DAT ABCDEF.TXT」のみが表示されるようにしたいです。