1. It sounds like you're trying to do a lot of things at once. Since every line of 'code' has to be exactly right when programming, this approach is likely to lead to a lot of user error and confusion.
2. When asking for help on the forum, please start by posting the command xml you are trying to use and having problems with, rather than explaining things in the abstract. This is something we mention in our "getting support" guidelines. It saves a lot of time, and it is much easier for others to understand and test the problems you're encountering.
For example, in your initial post here you wrote that the web page you were scraping had headlines of the form:
<title>NEWS 24 | New story uncovered </title>
PegLegTV accordingly provided a regular expression that would capture title string patterns that appear after "NEWS 24 | ", but in fact, the information initially provided was not at all accurate, so of course the solution provided is not going to work either.
It's also difficult to explain a problem in the abstract when concepts are still not fully learned, because it's easy to think a problem is one thing when it's another.
As another example, you say that:
the bbc regex from
http://feeds.bbci.co.uk/news/rss.xml# is
<title>.*?\!\[\w*\[(.*?)\]\]></
to get the title
but when i read it or have osd show it only said match.1.1.
I have run the command that you posted above, using the regular expression you use here in this quote.
If I "save and execute" the command that you posted with that regular expression, the correct OSD list of 4 headlines is displayed, no problem.
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.2.2.6-->
<command id="277" name="BBC" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>Scrape</cmdType>
<params>
<param>http://feeds.bbci.co.uk/news/rss.xml#</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.RegEx</cmdType>
<params>
<param><title>.*?\!\[\w*\[(.*?)\]\]></</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>OSD.ShowText</cmdType>
<params>
<param>Today's BBC headlines ({#M} total):</param>
<param>10000</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>OSD.AddText</cmdType>
<params>
<param>{i}. {Match.{i}.1}.</param>
</params>
<cmdRepeat>4</cmdRepeat>
</action>
<action>
<cmdType>TTS.SpeakSync</cmdType>
<params>
<param>Here are the top {#M} BBC headlines| These are the latest head lines!</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>TTS.Speak</cmdType>
<params>
<param>{i}. {Match.{i}.1}.</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
</command>
However, only *one* headline -- the first one -- is read aloud. This has nothing to do with the regular expression. This has to do with the fact that the TTS.Speak action is not set to repeat (iterate) 4 times, whereas the OSD.AddText line is.
If you change the repeat value of the TTS.Speak action from 1 to 4, it will read 4 headlines aloud, just as 4 headlines are displayed.
If you want all headlines (matches) found, then the iteration value should be changed from the static 4 to {#M}.
http://voxcommando.com/mediawiki/index.php?title=Variables#MatchesYou are saying that OSD is not displaying multiple headlines for you (I think -- though originally I thought you were saying that it was not working at all; it's not quite clear). That doesn't make sense based on the command you posted above, so either you are testing a different command on your end, or you are not accurately explaining what's happening.
My suggestion is that rather than trying to scrape many different websites and figure out the regular expressions needed for each, you concentrate on creating a working solution for one website, and one objective. Within that, work on understanding what each line of a command is doing, what information is passed to the command (if any), etc.