Won't go suggesting using JMP's Character Pattern as it is fairly difficult to understand (at least all the different functionalities) but I did manage (maybe) to do this using it
Names Default To Here(1);
str = "3.4 Offline Optimization & Simulation Tools;#15;#3.9 Simulation;#30;#4.6 Material Balance;#22";
idlist2 = {};
resval = "";
Pat Match(str, Pat Span("#") + Pat Regex("\d+?") >> next_id + Pat Regex("(;|$)") + Pat Test(
Insert Into(idlist2, next_id); resval = Concat Items(idlist2, ", "))
);
show(idlist2, resval);
here is example using it in formula
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(1),
Compress File When Saved(1),
New Column("Column 1",
Character,
"Nominal",
Set Values(
{
"3.4 Offline Optimization & Simulation Tools;#15;#3.9 Simulation;#30;#4.6 Material Balance;#22"
}
)
),
New Column("Column 2",
Character,
"Multiple Response",
Formula(
idlist2 = {};
resval = "";
Pat Match(
:Column 1,
Pat Span("#") + Pat Immediate(Pat Regex("\d+?"), next_id)
+Pat Regex("(;|$)") + Pat Test(
Insert Into(idlist2, next_id);
resval = Concat Items(idlist2, ", ");
)
);
resval;
),
Set Property("Multiple Response", Multiple Response(Separator(",")))
)
)
-Jarmo