Nếu bạn đang làm việc với một chuỗi nhiều dòng, như tệp mã:
<html>
<title>test</title>
<body>
<h1>test</h1>
</body>
</html>
Và muốn thay thế tất cả các dòng hàng đầu, để có được kết quả này:
<html>
<title>test</title>
<body>
<h1>test</h1>
</body>
</html>
Bạn phải thêm multiline
cờ vào biểu thức chính quy của mình ^
và $
khớp từng dòng:
string.replace(/^\s+|\s+$/gm, '');
Trích dẫn có liên quan từ các tài liệu :
Cờ "m" chỉ ra rằng một chuỗi đầu vào đa dòng nên được coi là nhiều dòng. Ví dụ: nếu "m" được sử dụng, "^" và "$" thay đổi từ khớp chỉ ở đầu hoặc cuối của toàn bộ chuỗi thành bắt đầu hoặc kết thúc của bất kỳ dòng nào trong chuỗi.