Potrzebuję wyrażeń regularnych C# do usunięcia wszystkiego między /*
i */
, w tym /**/
. Zasadniczo usuń wszystkie komentarze do kodu w podanym tekście.wyrażenie regularne potrzebne do usunięcia komentarzy C/C#
6
A
Odpowiedz
6
powinno być coś takiego:
var regex = new Regex("/\*((?!\*/).)*\*/", RegexOptions.Singleline);
regex.Replace(input, "");
2
Bądź ostrożny, że komentarze mogą być zagnieżdżone. Jeśli komentarze mogą być zagnieżdżone jak w SQL, podstawowa regex będzie wyglądać następująco:
/\*.*?\*/
Będziesz wtedy trzeba pętli dopóki nie jesteś nic rozbiórki.
Jeśli, przeciwnie, komentarze końca pierwszego */jak w C, trzeba ją chciwy z ujemnym uprzedzona:
/\*((?!\*/).)*\*/
0
Byłem też konieczności ignorować linii komentarze z postaci
// blablabla
więc, jeśli ktoś tylko trzeba to również modyfikować regex dodając ostatnią część | (//.*) tak pełna forma będzie:
(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|(//.*)
Powiązane problemy
- 1. Wyrażenie regularne służące do usuwania komentarzy z instrukcji SQL
- 2. Wyrażenie wyrażenie do usunięcia eonu ze stringa
- 3. Wyrażenie regularne w celu usunięcia podłańcucha między dwoma znakami
- 4. Wyrażenie regularne do cytowania legalnego
- 5. Wyrażenie regularne do sprawdzania cen
- 6. Wyrażenie regularne do sprawdzania haseł
- 7. Wyrażenie regularne do analizowania XML w .NET
- 8. Wyrażenie regularne do analizowania CSV w PHP
- 9. Wyjaśnij wyrażenie regularne, które znajdzie komentarze CSS
- 10. wyrażenie regularne w iOS
- 11. Wyrażenie regularne obciąć ciąg
- 12. MSSQL Wyrażenie regularne
- 13. Wyrażenie regularne lookbehind problemem
- 14. email wyrażenie regularne
- 15. Wyrażenie regularne Visual Studio do znajdowania skomentowanych bloków kodu
- 16. Wyrażenie regularne Wildcard Matching
- 17. Wyrażenie regularne Sanitize (PHP)
- 18. Clojure multiline wyrażenie regularne
- 19. c Wyrażenie regularne howto
- 20. debugowania Perl Wyrażenie regularne
- 21. Jak dekompilować wyrażenie regularne?
- 22. Wyrażenie regularne równoważne chomp
- 23. Wyrażenie regularne zastępuje
- 24. Wyrażenie regularne negatywne mecz
- 25. Python string.replace wyrażenie regularne
- 26. Wyrażenie regularne pasujące do wymiarów obiektu
- 27. Wyrażenie regularne do sprawdzania adresu URL strony
- 28. Wyrażenie regularne do znajdowania i zamiany warunkowo
- 29. Wyrażenie regularne pasujące do adresu IP + wieloznacznego
- 30. Wyrażenie regularne do sprawdzania poprawności nazwy użytkownika?
naprawdę nie potrzebujesz do tego celu. –
Jakie jest więc pytanie? – Reniuz
To nie jest takie łatwe. Twój kod może zawierać ciągi takie jak "This:/* boo */is no comment". – Jens