Tôi đang cố gắng đưa ra biểu thức chính quy để xóa nhận xét khỏi câu lệnh SQL.Biểu thức chính quy để xóa nhận xét khỏi câu lệnh SQL
regex này gần như hoạt động:
(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|'(?:[^']|'')*'|(--.*)
Excepth rằng phần cuối cùng không xử lý "-" ý kiến rất tốt. Vấn đề là xử lý các chuỗi SQL, được phân cách bằng ''.
Ví dụ, nếu tôi có
SELECT ' -- Hello -- ' FROM DUAL
Nó không phải phù hợp, nhưng nó phù hợp.
Đây là trong ASP/VBScript.
Tôi đã nghĩ về kết hợp từ phải sang trái nhưng tôi không nghĩ rằng công cụ regex của VBScript hỗ trợ nó. Ngoài ra đã cố gắng chơi đùa với vẻ ngoài tiêu cực nhưng kết quả không tốt.
Hi Justin ... nhờ giúp đỡ. Vẫn còn vấn đề với các bình luận nội tuyến không bắt đầu ngay từ đầu. Giống như CHỌN '- Hello -' TỪ DUAL - nhận xét cần được xóa –
Không vấn đề gì, và chào mừng bạn đến tràn ngăn xếp. Hãy nhớ rằng cách thể hiện sự đánh giá cao ở đây là thông qua các câu trả lời và các câu trả lời được chấp nhận (đánh dấu bên cạnh câu trả lời). Có thể tìm thấy thêm thông tin trong [FAQ], đặc biệt là [FAQ # HowToAsk] Cách hỏi –