# How about:

put "my " & quote & " beautiful " & quote & " laundrette" into srctext
put "<" into repchar
put 0 into oldoff
put 1 into toff
repeat while toff > 0
 put offset(quote,srctext,oldoff) into toff
 if toff > 0 then
 put repchar into char oldoff + toff of srctext
 add toff to oldoff
  if repchar ="<" then
   put ">" into repchar
  else
   put "<" into repchar
  end if
 end if
end repeat
put replacetext(srctext,"<[ ]+",quote) into srctext
put replacetext(srctext,"[ ]+>",quote) into srctext
put srctext

-- output: my "beautiful" laundrette

# Not a very pretty or robust script but it worked on your test data.

I don't know if there will only ever be one consecutive superfluous space but I had it clean up multiple spaces anyway.

There is a big assumption in this that opening and closing quotes are always balanced. If this is not the case, this procedure will give bad results.

Also if the characters "<" and ">" might occur in the data, different substitution characters should be used. These are OK on this example.

Martin Baxter

jbv wrote:
Hi,

thanks for the response, but I don't think it would work...

let's go back to my example :
    my " beautiful " laundrette

if you replace tOpenSpace first, then you get :
    my "beautiful "laundrette

and then if you replace tCloseSpace, you get
    my"beautiful"laundrette

Thanks anyway,
JB


I'm curious what mandates regEx?

if the means is not an issue in reaching the goal ,  doesn't
"replace" work for you?

This is obvious, but for the record:

function wipeQuotedSpaces tText
        put (quote & " ") into tOpenSpace
        put ( " " & quote) into tCloseSpace
        replace tOpenSpace with quote in tText
        replace tCloseSpace with quote in tText
        return tText
end wipeQuotedSpaces

Thanks,
JB



_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to