問題タブ [string-substitution]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2756 参照

linux - Bashスクリプトで特殊文字をエスケープされたバージョンに置き換えるにはどうすればよいですか

私は見て、見て、見てきたことを誓います。どこかでこれに対する答えを逃した場合は、お詫び申し上げます。それは、私が試していないということではなく、検索に失敗したことを意味します。

私は bash スクリプトに比較的慣れていませんが (:sigh: newbie)、ユーザーからの入力を受け取り、それを別のコマンドで使用するスクリプトを作成しようとしています。私の問題は、他のコマンドでユーザー入力の特殊文字をエスケープする必要があることです。

コードの基本的な形式は次のとおりです。

readothercommand行の間で、_INFO特殊文字 (スペース、一重引用符と二重引用符など) がエスケープされるようにする必要があります。たとえば、 の入力は次のthis pipe: | is my info!ようになります。this\ pipe\:\ \|\ is\ my\ info\!

othercommand注:コマンドが失敗する原因となるため、一重または二重の引用符を行に入れることはできません。情報文字列は、エスケープされている場合を除き、そのままである必要があります。

文字列置換マクロをさまざまな方法で使用してみました (スペースのみをチェックする例をいくつか示します)。

しかし、「悪い置換」エラーが発生し続けます。

したがって、これは具体的すぎる (スペースのみを処理する) だけでなく、とにかく機能しません。どうすればいいですか?

sedまたは、bash スクリプト処理にネイティブではない何かを使用awkする必要がある場合は、完全に慣れていないため、使用する必要がある正確な行が与えられることを好みます。(:はぁ:初心者)

0 投票する
2 に答える
260 参照

python - Python 正規表現: グループで置換

グループで置換を行う方法はありますか?

カスタム書式設定に基づいて、リンクをテキストに挿入しようとしているとします。したがって、次のようなものが与えられます。

で終わりたい

グループ 1 として角括弧内のものと一致することはわかってい'\[\[(.*?)\]\]'ますが、グループ 1 で別の置換を行いたいので、スペースを_.

それは単一のre.sub正規表現で実行できますか?

0 投票する
1 に答える
113 参照

r - それぞれの最初の 2 桁の数字に従って、文字列のリストを 2 番目のリストに置き換えます

文字列の名前付きリストがあります:

1 対 1 ではなく、次のオブジェクトの文字列名を文字列名に置き換えたい:

私はこのようなものが欲しいです:

手動で変更した場所

最初の 2 桁に応じて、各文字列の名前を 2 番目の list の要素に置き換える必要があります。私はlapply関数を試しましたが、うまくいきませんでした.またsub、置換を含む関数を作成しようとしましたが、何の変化も見られませんでした.以下のコードは次のとおりです.

この関数を使用して、最初の引数の属性のすべての名前を取得し、それが意味する要素に置き換えようとします。しかし、警告やエラーメッセージなしで以前と同じものを返します。それを行う簡単な方法があるに違いないと確信していますが、正しい方法が見つかりません


編集: nr.genes は次のように作成できます。

遺伝子。名前

マッチングについては、それが必要ですNr11 <-"up.p33-dw.p33"Nr21<-"<nr.genes.names[5]>"、その後Nr22<-"<nr.genes.names[6]>",Nr23<-"<nr.genes.names[7]>"Nr24<-""、その後Nr31 <-"<nr.genes.names[9]>"

0 投票する
2 に答える
2217 参照

bash - 置換と変数を使用してファイルとディレクトリの名前を変更する

変数を含まないことを除いて、解決策がある同様の質問をいくつか見つけました。

ファイルとディレクトリのツリーに特定のパターンがあります。パターンは TEMPLATE という単語です。TEMPLATE という単語を、変数 ${newName} に含まれる別の名前に置き換えて、すべてのファイルとディレクトリの名前を変更するスクリプト ファイルが必要です。

${newName} の値が「フレッドはここに住んでいます」であることがわかっている場合、コマンドは

仕事をします

ただし、私のスクリプトが次の場合:

TEMPLATE という単語は、「Fred lives here」ではなく null に置き換えられます。

パス名にスペースがあるため、$0 の前後に "" が必要なので、次のようなことはできません。

TEMPLATEという単語を含むすべてのファイルとディレクトリがTEMPLATEの値が何であれ置き換えられるように、このスクリプトを機能させるのを手伝ってくれる人はいます${newName}

たとえば、ifnewName="A different name"と a I had directory の

/foo/bar/some TEMPLATE directory/with files次に、ディレクトリの名前が次のように変更されます

/foo/bar/some A different name directory/with files

と呼ばれるファイルはsome TEMPLATE file名前が変更されます

some A different name file

0 投票する
2 に答える
275 参照

regex - Rの文字列内の数字を変更しますか?

Rでそれを行う方法についてのアイデアをいただければ幸いです。問題は次のとおりです。ラテックステーブルが保存されています。表中の数字はすべて小数点以下3桁を装備しています。これらの数字を切り取り、他の数字をテーブルに残します。(見積もり結果を表す数字を考えてみてください。ただし、次元は「ドル」です。この場合、145.553 という値はあまり意味がなく、145 で十分です)。これらのテーブルを作成した人はこれについてあまり考えていなかったので、ここではテーブルを手作業で調べないようにしています。:)

これまでのところ、文字列から数値を抽出する方法についてのさまざまな解決策しか見つかりませんでした。それ以外の場合、文字列自体が変更されないように数値を変更する方法は見つかりませんでした。

例:

ソリューションが返されるはずです

もちろん、丸めを正しく行うことができれば、さらに優れたものになります。しかし、これは最も重要なことではありません。

gsubwithを使用し\\....て、ピリオドの後に他の 3 つの数字が続く文字列を識別しようとしましたが、これによりa.name、私の例では変数名も得られます。

私がやりたいことをどのように達成できるか考えている人はいますか?

前もって感謝します!

0 投票する
2 に答える
83 参照

ruby - Rubyで二次元配列のすべての値を代入する方法

次のような 2 次元配列があります。

すべてのtrue(bool)値を'true'(string)に置き換え、すべてのfalse値を'false'に置き換えたいと思います

0 投票する
4 に答える
150 参照

python - 文字列の置換に関する条件

したがって、「中国銀行」、「中国大使館」、「国際中国」などの文字列を使用できます。

「の」または「の」がある場合を除いて、すべての国のインスタンスを置き換えたい

明らかにこれは、国のリストを反復処理し、名前に国が含まれているかどうかを確認し、次に国「の」または「の」の前に存在するかどうかを確認することで実行できます。

これらが存在する場合、国は削除されません。存在しない場合、国は削除されます。例は次のようになります。

「中国銀行」または「中国大使館」、「国際」

ただし、国のリストが大きく、置換対象のテキストのリストが大きい場合は特に、反復が遅くなる可能性があります。

文字列を置き換えるより高速で条件に基づいた方法はありますか? Python re ライブラリを使用して単純なパターン マッチを引き続き使用できるようにするには?

私の機能は次のとおりです。

編集:ここでいくつかの情報を見つけました。これは if の実行方法を説明していますが、if not 'of ' if not 'of the ' then replace が本当に必要です...

0 投票する
1 に答える
154 参照

c++ - int + "," に等しい文字列内の特定の文字を設定します

現在、行内の文字を対応する数字と「、」に置き換える関数を作成しています。私の現在のコードは次のとおりです。

(toUpper は自作の関数です)。文字列内の現在の文字を数字 + コンマに割り当てる方法がよくわかりません。最初は特定の文字に番号を割り当てようとしましたが、区切り文字が必要になることに気付いたので、カンマを使用することにしました。

0 投票する
1 に答える
116 参照

regex - 正規表現を使用した Perl での置換または置換

ここで何が間違っているのかわかりません。正規表現ブロックが一致せず、置換が行われない理由。助けてください。

$x を印刷すると、同じ値が印刷されます。親切に助けてください。