Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptを使用して二重引用符の間にテキストを抽出する方法

JavaScriptを使用して文字列から二重引用符で囲まれたテキストを抽出する方法を学びます。

テキストブロックから引用符で囲まれたテキストを取得するとします。引用符は通常、二重引用符で囲まれます(" " )。問題ありません。JavaScriptのmatch()を使用できます メソッドといくつかの正規表現の魔法。

これは、textWithQuoteという変数に割り当てる、二重引用符で囲まれた1つの文を含むテキストブロック(文字列値)です。 :

const textWithQuote =
  'One of my favorite quotes is "First we make our habits, then our habits make us". This quote is sometimes attributed to John Dryden, or other authors.'

それでは、match()を添付しましょう メソッドを変数に渡し、このややぎこちない引数を渡します/(?:"[^"]*"|^[^"]*$)/)[0].replace(/"/g, "" (申し訳ありません):

const extractQuote = textWithQuote
  .match(/(?:"[^"]*"|^[^"]*$)/)[0]
  .replace(/"/g, "")

そして結果を印刷します:

console.log(extractQuote)
// "First we make our habits, then our habits make us"

[0]を使用する理由 それ以外の場合は、返された文字列が複製されます。 [0]を使用する 最初の(1つの)結果のみを返したいことを指定します。

replace()を使用する理由 メソッド(.replace(/"/g, "") )それ以外の場合、返される結果には過剰な引用符が含まれます(すでに引用符が含まれている文字列内に引用符で囲まれたテキストが返されるため)。

split()を使用する代替メソッド

split()を使用して、二重引用符で囲まれたテキスト値を取得することもできます。 方法:

const textWithQuote =
  'One of my favorite quotes is "First we make our habits, then our habits make us". This quote is sometimes attributed to John Dryden, or other authors.'

console.log(textWithQuote.split('"')[1])
// "First we make our habits, then our habits make us"

この場合、2番目の結果を返すように指定する必要があります[1] [0] One of my favorite quotes isを返します 。

[2]を指定した場合 、2番目の"の直後に続くテキストが表示されます 二重引用符。

正規表現のトピックについて深く掘り下げ始めたばかりなので、どちらの方法をいつ使用するか、長所と短所は何であるかわかりません。


  1. JavaScriptでテキストを切り替える方法は?

    JavaScriptでテキストを切り替えるためのコードは、次のとおりです- 例 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1" /> <style>    body {       font-family: "Segoe UI", Tahoma, Geneva, Verdana,

  2. JavaScriptで<strong>タグにテキストを設定するにはどうすればよいですか?

    まず、要素-を設定します <strong id="strongDemo">Replace This strong tag</strong> 上記で設定されたid属性は、#-を使用してテキストを設定するために使用されます。 $(document).ready(function(){    $("#strongDemo").html("Actual value of 5+10 is 15....."); }); 例 <!DOCTYPE html> <html lang=&qu