質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

1回答

929閲覧

文字列の検索置換

Allmycoding

総合スコア5

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2017/02/11 12:00

編集2017/02/14 12:57

###文字列の詳細な検索のプログラム
automatorもしくはjava,jqueryで以下のような詳細な置換をかけることは可能でしょうか?
1.特定文字列から特定文字列まで選択範囲とし置換し
2.上から検索にヒットした順に置き換え文章の1行目、2行目、、、を次々入れていく。
また方法を教えてください。

##■■■■■■■■【例文】■■■■■■■■■

####【文章1】
サイクロン掃除機イオンファイバーヘッド搭載電動ふとんブラシ付きモデル
型番:VC-MG910
販売日:2016年8月発売
サイクロン掃除機イオンファイバーヘッド搭載モデル
型番:VC-MG710
販売日:2016年8月発売
サイクロン掃除機カーボンヘッド搭載モデル
型番:VC-S500
販売日:2016年12月発売
サイクロン掃除機ACアダプター
型番:ac-500
販売日:2016年12月発売

####【検索パターン】
●「サイクロン」から次の「モデル」までの文字列を【置き換え文字列】の1行目に置き換える
●次にヒットした「サイクロン」から次の「モデル」までの文字列を【置き換え文字列】の2行目に置き換える
●以下3、4、と置き換え文字列が無くなるまで続く

####【置き換え文字列】
コードレスクリーナーフルスペックモデル
コードレスクリーナースタンダードモデル
コードレスクリーナーライトモデル
コードレスクリーナー付属品モデル

##■■■■■■■結果■■■■■■■■
コードレスクリーナーフルスペックモデル
型番:VC-MG910
販売日:2016年8月発売
コードレスクリーナースタンダードモデル
型番:VC-MG710
販売日:2016年8月発売
コードレスクリーナーライトモデル
型番:VC-S500
販売日:2016年12月発売
コードレスクリーナーライト付属品
型番:ac-500
販売日:2016年12月発売

非常に分かりにくい文章で申し訳ございませんがよろしくお願いします。

2/12 追加分をコメントに記載しております。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

高度というか、正規表現の先読み使えばできるかと。

js

1var repData = [ 2 'コードレスクリーナーフルスペックモデル ', 3 'コードレスクリーナースタンダードモデル ', 4 'コードレスクリーナーライトモデル ', 5 'コードレスクリーナー付属品モデル' 6]; 7 8var str = `サイクロン掃除機イオンファイバーヘッド搭載電動ふとんブラシ付きモデル 9型番:VC-MG910 10販売日:2016年8月発売 11サイクロン掃除機イオンファイバーヘッド搭載モデル 12型番:VC-MG710 13販売日:2016年8月発売 14サイクロン掃除機カーボンヘッド搭載モデル 15型番:VC-S500 16販売日:2016年12月発売 17サイクロン掃除機ACアダプター 18型番:ac-500 19販売日:2016年12月発売`; 20 21var idx = 0; 22var replaced = str.replace(/([^\n]+?)(?=\n型番)/g, function(a, b){ 23 return repData[idx++]; 24}); 25result.textContent = replaced;

デモ

投稿2017/02/11 12:56

turbgraphics200

総合スコア4267

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Allmycoding

2017/02/14 11:44

すみません、少し説明が足りませんでしたが、「turbgraphics200」様が書かれている、「repData」「str」と「searchstart(例ではサイクロン)」「searchend(例ではモデル)」 をそれぞれ html上で下記のように入力フォームから入力できる形にしようと思ってるのですが、スクリプト上ではどのように扱えばいいでしょうか? ちなみにrepdateは改行ごとに区切り配列したいと思っています。 検索対象文字列<input type="text" name="str"><br> 開始文字列<input type="text" name="searchstart"> 終了文字列<input type="text" name="searchend"><br> 置換文字列<input type="text" name="repDate"> ボタン<input type="button" value="Sample1" onclick="Sample1()">
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問