Hi cần phải thay đổi chức năng ereg_replace("[\]", "", $theData)
để preg_replacethay ereg_replace với preg_replace
10
A
Trả lời
21
Để cổng ereg_replace
để preg_replace
bạn cần phải đặt regex giữa một cặp delimiter
Cũng regx của bạn được [\]
là không hợp lệ được sử dụng cho preg_replace như \
được thoát khỏi bế mạc char class ]
Cổng chính xác là
preg_replace('/[\\\]/','',$theData)
Cũng kể từ khi lớp char có chỉ là một char không có nhu cầu thực sự của lớp char bạn chỉ có thể nói:
preg_replace('/\\\/','',$theData)
Vì bạn là thay thế chỉ là một char duy nhất, sử dụng regex cho điều này không được khuyến khích . Bạn nên sử dụng một sự thay thế văn bản đơn giản sử dụng str_replace
như:
str_replace('\\','',$data);
2
str_replace("\\","",$theData);
Nhưng tôi nghiêm túc nghi ngờ bạn cần mà thay thế cả. rất có thể bạn cần một số hoạt động khác.
Điều này thay thế cho điều gì?
0
preg_replace("/\\\/", "", $theData);
0
Tôi sử dụng này sed để tự động thay thế ereg_replace bởi preg_replace và đặt dấu gạch chéo yêu cầu trong Giả không \" trong regex đầu tiên
sed -i 's#ereg_replace("\([^"]*\)"#preg_replace("/\1/"#g' *.php
Các vấn đề liên quan
- 1. chức năng Thay đổi để sử dụng preg_replace() thay vì ereg_replace
- 2. preg_replace với thay thế mảng
- 3. PHP preg_replace
- 4. JavaScript tương đương với PHP preg_replace
- 5. PHP preg_replace \
- 6. Sự cố khi thay thế Dấu nháy đơn bằng Preg_Replace
- 7. preg_replace \ n trong chuỗi
- 8. thực hiện nhiều preg_replace với tìm kiếm khác nhau và thay thế mỗi lần
- 9. preg_replace: thêm số sau backreference
- 10. preg_replace ném lỗi seg
- 11. PHP preg_replace ký tự đặc biệt
- 12. Cách chuyển đổi chuỗi thành chữ thường với preg_replace
- 13. Java tương đương với preg_replace này là gì?
- 14. preg_replace tất cả các không gian
- 15. Cách thêm/vào mẫu preg_replace
- 16. preg_replace để loại bỏ số độc
- 17. PHP preg_replace rắc rối không tham lam
- 18. PHP preg_replace/preg_match vs PHP str_replace
- 19. Thay thế nhiều lần xuất hiện của cùng một biểu tượng bằng cách sử dụng preg_replace?
- 20. Cảnh báo: preg_replace(): Unknown modifier 'g'
- 21. preg_replace sử dụng mẫu làm chỉ mục của mảng dữ liệu thay thế
- 22. PHP preg_replace - tìm thay thế từ mảng bằng cách sử dụng kết hợp làm khóa
- 23. Có một preg_replace có điều kiện trong PHP không?
- 24. Chức năng ereg_replace() không được dùng nữa - Làm thế nào để xóa lỗi này?
- 25. Bao gồm các dòng mới trong hàm preg_replace của PHP
- 26. preg_replace: chuyển đổi ngắt dòng thành các đoạn
- 27. Làm cách nào để chỉ thay thế kết quả trùng khớp cuối cùng của chuỗi bằng preg_replace?
- 28. Sử dụng các biến $ trong preg_replace trong PHP
- 29. Cách sử dụng biểu thức chính quy của preg_replace PHP để tìm và thay thế văn bản?
- 30. không phá vỡ utf-8 0xc2a0 không gian và preg_replace hành vi lạ
. '/ \\\ /' sẽ dẫn đến thoát khỏi dấu gạch chéo phía trước bởi preg_replace, bạn cần 4 dấu gạch chéo ngược –
@Yanick chỉ cần thử nó –
@Yanick, không có nó sẽ không. 'preg_replace' thấy nó như/\\ /, mà nó Hãy giải thích rằng '/ \\\\ /' là * cũng * đúng, vì \\ và \ có thể mã hóa một dấu gạch chéo ngược trong một chuỗi ký tự. t \/không phải là một chuỗi thoát. –