Xóa dấu nháy đơn khỏi đầu và cuối chuỗi javascript

Sử dụng phương pháp String.replaceAll[] để thay thế dấu ngoặc đơn bằng dấu ngoặc kép, e. g. ________số 8. Phương thức replaceAll sẽ trả về một chuỗi mới trong đó tất cả các lần xuất hiện của dấu ngoặc đơn được thay thế bằng dấu ngoặc kép

Chúng tôi truyền các tham số sau vào Chuỗi. phương pháp thay thế tất cả

  1. một chuỗi con để khớp trong chuỗi. Trong trường hợp này, chúng tôi khớp tất cả các dấu nháy đơn trong chuỗi
  2. một sự thay thế cho mỗi trận đấu. Chúng tôi thay thế mỗi trích dẫn đơn bằng một trích dẫn kép

Chúng ta phải xen kẽ các chuỗi, điều này làm cho phương thức replaceAll rất khó đọc

Tôi thích sử dụng

Input: "text wrapped in double quotes"
Result: text wrapped in double quotes
1 để quấn dây hơn. Đoạn mã sau đạt được cùng một mục tiêu

Thay vì xen kẽ dấu ngoặc đơn và dấu ngoặc kép, chúng tôi đã sử dụng

Input: "text wrapped in double quotes"
Result: text wrapped in double quotes
1 khi truyền tham số cho phương thức replaceAll

Phương thức replaceAll không thay đổi nội dung của chuỗi ban đầu, nó trả về một chuỗi mới với tất cả các kết quả được thay thế. Các chuỗi là bất biến trong JavaScript

Ngoài ra, bạn có thể sử dụng phương pháp

Input: "text wrapped in double quotes"
Result: text wrapped in double quotes
5

Sử dụng phương pháp

Input: "text wrapped in double quotes"
Result: text wrapped in double quotes
6 để thay thế dấu ngoặc đơn bằng dấu ngoặc kép, e. g. const replaced = str.replaceAll["'", '"'];0"const replaced = str.replaceAll["'", '"'];1. Phương thức
Input: "text wrapped in double quotes"
Result: text wrapped in double quotes
5 sẽ trả về một chuỗi mới trong đó tất cả các lần xuất hiện của dấu ngoặc đơn được thay thế bằng dấu ngoặc kép

Tham số đầu tiên chúng tôi chuyển đến Chuỗi. phương thức thay thế là một biểu thức chính quy khớp với tất cả các dấu nháy đơn trong chuỗi

Dấu gạch chéo về phía trước const replaced = str.replaceAll["'", '"'];3 đánh dấu phần đầu và phần cuối của biểu thức chính quy

Chúng tôi đã sử dụng cờ const replaced = str.replaceAll["'", '"'];4 [toàn cầu] vì chúng tôi muốn khớp tất cả các lần xuất hiện của một trích dẫn trong chuỗi chứ không chỉ lần xuất hiện đầu tiên

Chúng tôi đã sử dụng một trích dẫn kép cho chuỗi thay thế

Nếu bạn gặp khó khăn khi đọc một biểu thức chính quy, hãy xem trang phục regex này của MDN

Bạn chọn cách tiếp cận nào là vấn đề sở thích cá nhân. Tôi sẽ sử dụng phương pháp replaceAll để tránh sử dụng các biểu thức thông thường

Sử dụng phương pháp String.replaceAll[] để loại bỏ tất cả các dấu ngoặc kép khỏi một chuỗi, e. g.

if [input != null && input.length[] >= 2 
      && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
    result = input.substring[1, input.length[] - 1];
}
4. Phương thức
if [input != null && input.length[] >= 2 
      && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
    result = input.substring[1, input.length[] - 1];
}
5 sẽ trả về một chuỗi mới đã loại bỏ tất cả các dấu ngoặc kép

Chúng tôi đã chuyển các tham số sau cho Chuỗi. phương pháp thay thế tất cả

  1. một chuỗi con chúng tôi muốn khớp trong chuỗi. Trong trường hợp của chúng tôi, một chuỗi chứa dấu ngoặc kép
  2. Sự thay thế cho mỗi trận đấu. Chúng tôi cần xóa từng dấu ngoặc kép, vì vậy chúng tôi thay thế dấu ngoặc kép bằng các chuỗi rỗng

Phương thức

if [input != null && input.length[] >= 2 
      && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
    result = input.substring[1, input.length[] - 1];
}
6 không thay đổi chuỗi gốc. Nó trả về một chuỗi mới với tất cả các kết quả khớp được thay thế. Các chuỗi là bất biến trong JavaScript

Ngoài ra, bạn có thể sử dụng phương pháp

if [input != null && input.length[] >= 2 
      && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
    result = input.substring[1, input.length[] - 1];
}
5

Để xóa dấu ngoặc kép khỏi một chuỗi

  1. Gọi phương thức
    if [input != null && input.length[] >= 2 
          && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
        result = input.substring[1, input.length[] - 1];
    }
    5 trên chuỗi
  2. Phương thức
    Input: "text wrapped in double quotes"
    Result: text wrapped in double quotes
    5 sẽ thay thế mỗi lần xuất hiện của một trích dẫn kép bằng một chuỗi rỗng
  3. Phương thức
    Input: "text wrapped in double quotes"
    Result: text wrapped in double quotes
    5 sẽ trả về một chuỗi mới đã loại bỏ tất cả các dấu ngoặc kép

Tham số đầu tiên chúng tôi chuyển đến Chuỗi. phương thức thay thế là một biểu thức chính quy mà chúng tôi muốn khớp trong chuỗi

Hai dấu gạch chéo về phía trước

String result = input.replaceAll["\"", ""];
1 đánh dấu phần đầu và phần cuối của biểu thức chính quy

Chúng tôi sử dụng cờ

String result = input.replaceAll["\"", ""];
2 [toàn cầu] vì chúng tôi muốn so khớp tất cả các lần xuất hiện của một trích dẫn kép trong chuỗi chứ không chỉ lần xuất hiện đầu tiên

Nếu bạn cần trợ giúp để đọc một biểu thức chính quy, hãy xem trang phục regex này của MDN

Tham số thứ hai mà chúng tôi truyền cho phương thức

Input: "text wrapped in double quotes"
Result: text wrapped in double quotes
5 là một chuỗi rỗng vì chúng tôi muốn xóa tất cả các dấu ngoặc kép khỏi chuỗi

Phương thức

Input: "text wrapped in double quotes"
Result: text wrapped in double quotes
5 không thay đổi chuỗi ban đầu, nó trả về một chuỗi mới

Ngoài ra, bạn có thể sử dụng phương pháp

if [input != null && input.length[] >= 2 
      && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
    result = input.substring[1, input.length[] - 1];
}
42 và
if [input != null && input.length[] >= 2 
      && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
    result = input.substring[1, input.length[] - 1];
}
43

Để xóa dấu ngoặc kép khỏi một chuỗi

  1. Sử dụng phương pháp
    if [input != null && input.length[] >= 2 
          && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
        result = input.substring[1, input.length[] - 1];
    }
    44 để tách chuỗi trên mỗi trích dẫn kép
  2. Sử dụng phương thức
    if [input != null && input.length[] >= 2 
          && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
        result = input.substring[1, input.length[] - 1];
    }
    43 để tham gia mảng chuỗi
  3. Chuỗi mới sẽ không chứa bất kỳ dấu ngoặc kép nào

chuỗi. phương thức split chia chuỗi thành một mảng các chuỗi con dựa trên dấu tách được cung cấp

Trong hướng dẫn này, chúng ta sẽ nghiên cứu các cách tiếp cận khác nhau để loại bỏ các dấu ngoặc kép bắt đầu và kết thúc khỏi một Chuỗi trong Java

Những gì chúng ta sẽ khám phá ở đây có thể hữu ích cho việc xử lý văn bản được trích xuất từ ​​tệp hoặc nhận được từ các nguồn khác

2. Cách tiếp cận đơn giản. phương thức chuỗi con

Đầu tiên, chúng ta sẽ bắt đầu với một cách tiếp cận đơn giản bằng cách sử dụng phương thức chuỗi con. Phương thức này có thể được gọi trên một đối tượng Chuỗi để trả về một chuỗi con cụ thể

Phương thức yêu cầu hai tham số

  1. beginIndex — chỉ mục của ký tự mà chuỗi con sẽ bắt đầu
  2. end Index - chỉ mục sau nơi chuỗi con sẽ kết thúc

Do đó, xét rằng Chuỗi đầu vào của chúng ta được đặt trong dấu ngoặc kép, chúng ta có thể sử dụng phương thức chuỗi con

String input = "\"text wrapped in double quotes\"";
String result = input.substring[1, input.length[] - 1];
System.out.println["Input: " + input];
System.out.println["Result: " + result];

Bằng cách thực thi đoạn mã trên, chúng ta có đầu ra sau

Input: "text wrapped in double quotes"
Result: text wrapped in double quotes

Nếu chúng tôi không chắc liệu Chuỗi có được đặt trong dấu ngoặc kép hay không, chúng tôi có thể kiểm tra nó trước khi chạy phương thức chuỗi con

if [input != null && input.length[] >= 2 
      && input.charAt[0] == '\"' && input.charAt[input.length[] - 1] == '\"'] {
    result = input.substring[1, input.length[] - 1];
}

Trong ví dụ trên, chúng tôi đã kiểm tra xem Chuỗi có ít nhất hai ký tự và nó bắt đầu và kết thúc bằng dấu ngoặc kép

3. Sử dụng phương pháp thay thế tất cả

Ngoài phương thức substring, chúng ta cũng có thể sử dụng phương thức replaceAll. Phương thức này thay thế tất cả các phần của Chuỗi khớp với một biểu thức chính quy đã cho. Sử dụng replaceAll, chúng tôi có thể loại bỏ tất cả các lần xuất hiện của dấu ngoặc kép bằng cách thay thế chúng bằng các chuỗi trống

String result = input.replaceAll["\"", ""];

Một mặt, cách tiếp cận này có ưu điểm là loại bỏ tất cả các lần xuất hiện của dấu ngoặc kép, ngay cả khi chuỗi có nhiều dòng. Mặt khác, với cách tiếp cận này, chúng tôi không thể chỉ xóa dấu ngoặc kép ở đầu và cuối Chuỗi

Để loại bỏ dấu ngoặc kép ngay từ đầu và cuối Chuỗi, chúng ta có thể sử dụng biểu thức chính quy cụ thể hơn

String result = input.replaceAll["^\"|\"$", ""];

Sau khi thực hiện ví dụ này, các lần xuất hiện dấu ngoặc kép ở đầu hoặc cuối Chuỗi sẽ được thay thế bằng chuỗi rỗng

Để hiểu cách tiếp cận này, hãy chia nhỏ biểu thức chính quy của chúng ta

Đầu tiên, chúng ta có ký hiệu dấu mũ [^], theo sau là dấu ngoặc kép thoát [\”] để khớp với dấu ngoặc kép ở đầu Chuỗi. Sau đó, có một biểu tượng ống [. ] để chỉ ra một phương án phù hợp, tương tự như toán tử logic OR

Cuối cùng, chúng tôi đã thoát khỏi dấu ngoặc kép, theo sau là ký hiệu đô la [$] để khớp dấu ngoặc kép ở cuối Chuỗi

4. Dùng Ổi

Một cách tiếp cận khả thi khác để xóa dấu ngoặc kép ở đầu và cuối Chuỗi là sử dụng lớp CharMatcher từ thư viện Guava

String result = CharMatcher.is['\"'].trimFrom[input];

Cách tiếp cận này dễ hiểu hơn và chỉ xóa các trích dẫn đầu và cuối khỏi Chuỗi. Tuy nhiên, để phương pháp này hoạt động, chúng ta cần thêm thư viện ổi vào dự án của mình


    com.google.guava
    guava
    ${guava-version}

Trong trường hợp này, chúng tôi cần đặt thuộc tính ${guava-version} thành phiên bản mà chúng tôi muốn sử dụng

5. Phần kết luận

Trong bài viết này, chúng tôi đã khám phá các tùy chọn khác nhau để xóa dấu ngoặc kép ở đầu và cuối Chuỗi. Chúng ta có thể áp dụng bất kỳ phương pháp nào trong số này vào thực tế và mỗi phương pháp đều có ưu điểm và nhược điểm

Ví dụ: khi sử dụng thư viện Guava, chúng tôi có một giải pháp đơn giản và thanh lịch. Tuy nhiên, nếu Guava không được bao gồm trong dự án của chúng tôi, giải pháp này sẽ yêu cầu bổ sung một phụ thuộc mới

Làm cách nào để xóa dấu nháy đơn khỏi chuỗi trong JavaScript?

Để xóa tất cả các dấu ngoặc kép khỏi một chuỗi, hãy sử dụng các phương thức replace[] của JavaScript . Nó là phương thức được xác định trước của đối tượng kiểu String. Nó chấp nhận hai tham số, “searchValue” và “replaceValue” và cung cấp một chuỗi có thay thế cụ thể sau khi tìm kiếm chuỗi theo một giá trị cụ thể hoặc mẫu biểu thức chính quy.

Làm cách nào để xóa dấu ngoặc kép đầu tiên và cuối cùng khỏi một chuỗi trong JavaScript?

Sử dụng Chuỗi. phương thức replaceAll[] để xóa tất cả dấu nháy kép khỏi chuỗi , e. g. str. thay thế tất cả['"', '']. Phương thức thay thế [] sẽ trả về một chuỗi mới với tất cả các dấu ngoặc kép đã bị xóa.

Làm cách nào để xóa dấu ngoặc đơn và dấu ngoặc kép khỏi chuỗi trong JavaScript?

Để xóa dấu ngoặc kép khỏi một chuỗi trong JavaScript, hãy sử dụng Chuỗi. phương thức thay thế[] . Bạn có thể nhắm mục tiêu dấu ngoặc kép bằng RegEx và thay thế chúng bằng giá trị null.

Làm cách nào để xóa ký tự đầu tiên và ký tự cuối cùng khỏi chuỗi trong JavaScript?

slice[] để xóa ký tự đầu tiên và ký tự cuối cùng khỏi chuỗi, e. g. const không có FirstAndLast = str. lát [1, -1]; . slice[] sẽ trả về một bản sao của chuỗi gốc với các ký tự đầu tiên và cuối cùng đã bị xóa.

Chủ Đề