Hãy lưu ý rằng String.prototype.{ split, slice, substr, substring }
hoạt động trên các chuỗi được mã hóa UTF-16
Không có câu trả lời nào trước đây là nhận biết unicode. Các chuỗi được mã hóa dưới dạng UTF-16 trong hầu hết các động cơ JavaScript hiện đại, nhưng các điểm mã Unicode cao hơn yêu cầu các cặp thay thế, vì vậy các phương thức chuỗi cũ hơn, có sẵn hoạt động trên các đơn vị mã UTF-16, không phải là điểm mã Unicode. Xem: Không sử dụng .split['']
.
const string = "ẞ🦊";
console.log[string.slice[0, -1]]; // "ẞ\ud83e"
console.log[string.substr[0, string.length - 1]]; // "ẞ\ud83e"
console.log[string.substring[0, string.length - 1]]; // "ẞ\ud83e"
console.log[string.replace[/.$/, ""]]; // "ẞ\ud83e"
console.log[string.match[/[.*].$/][1]]; // "ẞ\ud83e"
const utf16Chars = string.split[""];
utf16Chars.pop[];
console.log[utf16Chars.join[""]]; // "ẞ\ud83e"
Ngoài ra, các phương pháp RegExp
, như được đề xuất trong các câu trả lời cũ hơn, don lồng các đường dây phù hợp ở cuối:
const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
Sử dụng Trình lặp chuỗi để lặp lại các ký tự
Mã nhận biết unicode sử dụng trình lặp lại chuỗi; Xem Array.from
và ...
lan truyền.
const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
0 cũng có thể được sử dụng [ví dụ: thay vì const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
1].Ngoài ra, hãy xem cách chia chuỗi Unicode thành các ký tự trong JavaScript.
Examples:
const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
Sử dụng cờ const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
2 và const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
3 trên RegExp
const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
Cờ
const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
5 hoặc const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
2 tạo ra các ký tự ngắt dòng const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
7, cờ const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
8 hoặc const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
3 cho phép các tính năng liên quan đến unicode nhất định. Lưu ý rằng, khi sử dụng cờ const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
3, bạn sẽ loại bỏ các thoát khỏi danh tính không cần thiết, vì chúng không hợp lệ trong một regex const string = "Hello, world!\n";
console.log[string.replace[/.$/, ""].endsWith["\n"]]; // true
console.log[string.match[/[.*].$/] === null]; // true
3, ví dụ: const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
2 vẫn ổn, vì nó sẽ bắt đầu một lớp ký tự mà không có dấu gạch chéo ngược, nhưng const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
3 isn, vì nó là một const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
4 có hoặc không có dấu gạch chéo ngược, vì vậy bạn cần phải loại bỏ dấu gạch chéo ngược.Examples:
const unicodeString = "ẞ🦊",
lineBreakString = "Hello, world!\n";
console.log[lineBreakString.replace[/.$/s, ""].endsWith["\n"]]; // false
console.log[lineBreakString.match[/[.*].$/s] === null]; // false
console.log[unicodeString.replace[/.$/su, ""]]; // ẞ
console.log[unicodeString.match[/[.*].$/su][1]]; // ẞ
// Now `split` can be made Unicode-aware:
const unicodeCharacterArray = unicodeString.split[/[?:]/su],
lineBreakCharacterArray = lineBreakString.split[/[?:]/su];
unicodeCharacterArray.pop[];
lineBreakCharacterArray.pop[];
console.log[unicodeCharacterArray.join[""]]; // "ẞ"
console.log[lineBreakCharacterArray.join[""].endsWith["\n"]]; // false
Lưu ý rằng một số biểu đồ bao gồm nhiều hơn một điểm mã, ví dụ:
const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
5 bao gồm chuỗi const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
6 [U+1F3F3], const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
7 [U+Fe0f], const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
8 [U+200D], const string = "ẞ🦊";
console.log[Array.from[string].slice[0, -1].join[""]]; // "ẞ"
console.log[[
...string
].slice[0, -1].join[""]]; // "ẞ"
9 [U+1F308]. Ở đây, thậm chí Array.from
sẽ chia điều này thành bốn nhân vật của người Viking. Kết hợp những điều đó được thực hiện dễ dàng hơn với ký hiệu tập hợp RegEXP và thuộc tính của đề xuất chuỗi. Làm thế nào bạn có thể loại bỏ ký tự cuối cùng khỏi một chuỗi?
Giải pháp đơn giản nhất là sử dụng phương pháp
const unicodeString = "ẞ🦊",
lineBreakString = "Hello, world!\n";
console.log[lineBreakString.replace[/.$/s, ""].endsWith["\n"]]; // false
console.log[lineBreakString.match[/[.*].$/s] === null]; // false
console.log[unicodeString.replace[/.$/su, ""]]; // ẞ
console.log[unicodeString.match[/[.*].$/su][1]]; // ẞ
// Now `split` can be made Unicode-aware:
const unicodeCharacterArray = unicodeString.split[/[?:]/su],
lineBreakCharacterArray = lineBreakString.split[/[?:]/su];
unicodeCharacterArray.pop[];
lineBreakCharacterArray.pop[];
console.log[unicodeCharacterArray.join[""]]; // "ẞ"
console.log[lineBreakCharacterArray.join[""].endsWith["\n"]]; // false
1 của chuỗi, chuyển 2 tham số. Đầu tiên là 0, điểm bắt đầu. Thứ hai là số lượng vật phẩm để loại bỏ. Vượt qua một số âm sẽ loại bỏ bắt đầu từ cuối. Đây là giải pháp:const text = 'abcdef'
const editedText = text.slice[0, -1] //'abcde'
Lưu ý rằng phương thức
const unicodeString = "ẞ🦊",
lineBreakString = "Hello, world!\n";
console.log[lineBreakString.replace[/.$/s, ""].endsWith["\n"]]; // false
console.log[lineBreakString.match[/[.*].$/s] === null]; // false
console.log[unicodeString.replace[/.$/su, ""]]; // ẞ
console.log[unicodeString.match[/[.*].$/su][1]]; // ẞ
// Now `split` can be made Unicode-aware:
const unicodeCharacterArray = unicodeString.split[/[?:]/su],
lineBreakCharacterArray = lineBreakString.split[/[?:]/su];
unicodeCharacterArray.pop[];
lineBreakCharacterArray.pop[];
console.log[unicodeCharacterArray.join[""]]; // "ẞ"
console.log[lineBreakCharacterArray.join[""].endsWith["\n"]]; // false
1 không sửa đổi chuỗi gốc.Nó tạo ra một chuỗi mới, đây là lý do tại sao tôi gán nó cho một biến mới trong ví dụ trên.
Câu hỏi: Làm cách nào để xóa ký tự cuối cùng khỏi chuỗi trong tập lệnh javascript hoặc node.js?
Hướng dẫn này mô tả 2 phương thức để loại bỏ ký tự cuối cùng khỏi một chuỗi trong ngôn ngữ lập trình JavaScript. Bạn có thể sử dụng bất kỳ một trong các phương pháp sau theo yêu cầu.
Phương pháp 1 - Sử dụng hàm Subring []
Sử dụng hàm Subring [] để loại bỏ ký tự cuối cùng khỏi chuỗi trong JavaScript. Hàm này trả về một phần của chuỗi giữa các chỉ mục bắt đầu và kết thúc hoặc đến cuối chuỗi.
Cú pháp:
str.substring[0,str.length-1];.substring[0,str.length-1]; |
Thí dụ:
// Khởi tạo biến với chuỗi varstr = "Xin chào tecadmin!";str="Hello TecAdmin!"; // Xóa ký tự cuối cùng của chuỗi str=str.substring[0,str.length-1];=str.substring[0,str.length- 1]; // in chuỗi kết quả console.log[str].log[str] |
Phương pháp 2 - Sử dụng hàm Slice []
Sử dụng hàm Slice [] để loại bỏ ký tự cuối cùng khỏi bất kỳ chuỗi nào trong JavaScript. Hàm này trích xuất một phần của bất kỳ chuỗi nào và trả về dưới dạng chuỗi mới. Khi bạn có thể lưu trữ trong một biến.
Cú pháp:
Thí dụ:
// Khởi tạo biến với chuỗi varstr = "Xin chào tecadmin!";str="Hello TecAdmin!"; // Xóa ký tự cuối cùng của chuỗi str=str.slice[0,-1];=str.slice[0,-1]; // in chuỗi kết quả console.log[str].log[str] |
Phương pháp 2 - Sử dụng hàm Slice []
Sử dụng hàm Slice [] để loại bỏ ký tự cuối cùng khỏi bất kỳ chuỗi nào trong JavaScript. Hàm này trích xuất một phần của bất kỳ chuỗi nào và trả về dưới dạng chuỗi mới. Khi bạn có thể lưu trữ trong một biến.