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 Variables
Set values = ""
Set start = 1
While 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
Ir a la publicación original, escrita por @Padmaja Konduru
Comentarios (0)1