Encontrad valores desde texto y mostradlos
La utilidad devuelve los valores deseados del texto y muestra múltiples valores si existen, basándose en una cadena de inicio y una de fin.
Class Test.Utility.FunctionSet Extends %RegisteredObject{/// W !,##class(Test.Utility.FunctionSet).ExtractValues("Some random text VALUE=12345; some other VALUE=2345; more text VALUE=345678;","VALUE=",";")ClassMethod ExtractValues(text As %String, startStr As %String, endStr As %String) As %String{//Initialize VariablesSet values = ""Set start = 1While start '= 0
{Set start = $Find(text, startStr, start)If start = 0 { Quit}Set end = $Find(text, endStr, start)If end = 0 { Quit}Set value = $Extract(text, start, end-$Length(endStr)-1)IF values '= ""
{Set values = values _" "_value }
Else
{Set values = value }Set start = end}Quit values}}Output o salida:
Write !,##class(Test.Utility.FunctionSet).ExtractValues("Some random text VALUE=12345; some other VALUE=2345; more text VALUE=345678;","VALUE=",";")
12345 2345 345678
Comentarios (0)0