Как извлечь буквенно-цифровые символы только из строки?
Пример: b:lbalbqsd1287/;:!,
Дает blbalbqsd1287
Возможно ли это с помощью findstr
?
Я думаю, что это может быть как-то возможно сделать в пакетном режиме. Я не знаю как, и я уверен, что это больно, не поддается ремонту и безобразно. Но, в качестве альтернативы, вы можете использовать vbscript для выполнения работы (также встроенный и должен быть доступен в каждой ОС).
Я написал этого маленького парня здесь для вашего удовольствия :)
Option Explicit
Dim sInput, sOutput
sInput = "b:lbalbqsd1287/;:!,"
sOutput = RegEXP_VBS(sInput)
Call MsgBox (sOutput)
Function RegEXP_VBS(sIn)
Dim oREGEXP, oResult, oMatch
Set oREGEXP = CreateObject("vbscript.regexp")
oREGEXP.IgnoreCase = False
oREGEXP.MultiLine = False
oREGEXP.Global = True
oREGEXP.Pattern = "[a-zA-Z0-9]"
Set oResult = oREGEXP.Execute(sIn)
For Each oMatch in oResult
RegEXP_VBS = RegEXP_VBS & oMatch.Value
Next
End Function