Регулярное выражение для парсинга xml в .NET

У меня есть следующая функция, которую я использую для удаления символов \04 и аннулирую от своего xmlString, но я не могу найти то, что делает я должен измениться, чтобы не удалять \из моих завершающих тэгов. Это - то, что я получаю, когда я выполняю эту функцию

<ARR>20080625<ARR><DEP>20110606<DEP><PCIID>626783<PCIID><NOPAX>1<NOPAX><TG><TG><HASPREV>FALSE<HASPREV><HASSUCC>FALSE<HASSUCC>

Может кто-либо помогать мне узнать то, что делает я должен измениться в своем выражении для хранения завершающего тэга как </tag>

Private Function CleanInput(ByVal inputXML As String) As String
    ' Note - This will perform better if you compile the Regex and use a reference to it.
    ' That assumes it will still be memory-resident the next time it is invoked.
    ' Replace invalid characters with empty strings.
    Return Regex.Replace(inputXML, "[^><\w\.@-]", "")
End Function
6
задан Brad Mace 9 July 2011 в 07:15
поделиться

1 ответ

Private Function CleanInput(ByVal inputXML As String) As String
    Return Regex.Replace(inputXML, "[^/><\w\.@-]", "")
    ' --------------------------------^
End Function

Но поскольку ваша цель - удалить только \04 и \00, безопаснее ограничить замену только ими.

Private Function CleanInput(ByVal inputXML As String) As String
    Return Regex.Replace(inputXML, "[\4\0]", "")
End Function
4
ответ дан 17 December 2019 в 07:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: