It is currently May 8th, 2024, 3:57 am

[SOLVED] Regex Substitutions Not Working

Get help with creating, editing & fixing problems with skins
arbrown
Posts: 12
Joined: September 12th, 2009, 3:20 am

[SOLVED] Regex Substitutions Not Working

Post by arbrown »

I'm having an issue where I'm pulling data from a website using a regular expression. The data I'm pulling is from a table that gets updated regularly (it's a baseball score), but when the score is empty, the website inserts a " " into the table cell.

I've substituted &nbsp with a regular space in my code, but I'm still getting the actual text showing up when it displays.

Is this something that can be fixed, or am I SOL because the data is being parsed directly?

Here's the code (borrowed from Mr. Morley's IP.ini):

Code: Select all

;=================================================
; Rainmeter configuration file
; Updated May 30, 2009
;=================================================

;[BEGIN CONFIG FILE]==============================

[Rainmeter]
Author=Jeffrey Morley
Update=3600

[Variables]
URL="http://scores.heraldinteractive.com/aspdata/clients/herald/game-park.aspx?team=028"
FontColor=255, 255, 255, 255
FontFace=rockwell
Substitute="&":"&",""":"","&Quot;":"","<br>":"","![CDATA[":"","]]":"","...":"","<":"",">":"","/PRE>":"","PRE>":"","<":"","&nbsp;":"_"
x=28r
y=25
;[WEBSITE MEASURES]===============================

[MeasureWebsite]
Measure=Plugin
Plugin=Plugins\WebParser.dll
UpdateRate=1800
Url=#URL#
RegExp="(?siU)_blank">(.*)</a>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*_blank">(.*)</a>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>.*center">(.*)</td>"
Debug=1

[MeasureHomeTeam]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=1

[MeasureHome1]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=2

[MeasureHome2]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=3

[MeasureHome3]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=4

[MeasureHome4]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=5

[MeasureHome5]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=6

[MeasureHome6]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=7

[MeasureHome7]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=8

[MeasureHome8]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=9

[MeasureHome9]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=10

[MeasureHomeR]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=11

[MeasureHomeH]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=12

[MeasureHomeE]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=13

;[Away Team]=============================
[MeasureAwayTeam]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=14

[MeasureAway1]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=15

[MeasureAway2]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=16

[MeasureAway3]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=17

[MeasureAway4]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=18

[MeasureAway5]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=19

[MeasureAway6]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=20

[MeasureAway7]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=21

[MeasureAway8]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=22

[MeasureAway9]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=23

[MeasureAwayR]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=24

[MeasureAwayH]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=25

[MeasureAwayE]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=26


;[DISPLAY METERS]==================================

[MeterBackground]
Meter=IMAGE
X=1
Y=1
H=100
W=500


; [DISPLAY HOME TEAM] ================
[MeterHomeTeam]
MeasureName=MeasureHomeTeam
Meter=STRING
X=2
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterHome1]
MeasureName=MeasureHome1
Meter=STRING
X=100
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterHome2]
MeasureName=MeasureHome2
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterHome3]
MeasureName=MeasureHome3
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterHome4]
MeasureName=MeasureHome4
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterHome5]
MeasureName=MeasureHome5
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterHome6]
MeasureName=MeasureHome6
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterHome7]
MeasureName=MeasureHome7
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterHome8]
MeasureName=MeasureHome8
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterHome9]
MeasureName=MeasureHome9
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterHomeR]
MeasureName=MeasureHomeR
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterHomeH]
MeasureName=MeasureHomeH
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterHomeE]
MeasureName=MeasureHomeE
Meter=STRING
X=#x#
Y=#y#
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


; [DISPLAY AWAY TEAM] ================

[MeterAwayTeam]
MeasureName=MeasureAwayTeam
Meter=STRING
X=2
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterAway1]
MeasureName=MeasureAway1
Meter=STRING
X=100
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterAway2]
MeasureName=MeasureAway2
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterAway3]
MeasureName=MeasureAway3
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1


[MeterAway4]
MeasureName=MeasureAway4
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterAway5]
MeasureName=MeasureAway5
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterAway6]
MeasureName=MeasureAway6
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterAway7]
MeasureName=MeasureAway7
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterAway8]
MeasureName=MeasureAway8
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterAway9]
MeasureName=MeasureAway9
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterAwayR]
MeasureName=MeasureAwayR
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterAwayH]
MeasureName=MeasureAwayH
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

[MeterAwayE]
MeasureName=MeasureAwayE
Meter=STRING
X=#x#
Y=2
FontColor=#FontColor#
FontSize=12
StringAlign=LEFT
FontFace=#FontFace#
Antialias=1

Last edited by arbrown on July 20th, 2011, 12:22 am, edited 1 time in total.
User avatar
Kaelri
Developer
Posts: 1721
Joined: July 25th, 2009, 4:47 am

Re: Regex Substitutions Not Working

Post by Kaelri »

You've defined your substitution string as a general variable, but you haven't actually applied it to your WebParser measures. Each measure must reference the variable, as such:

Code: Select all

[MeasureHomeTeam]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=1
Substitute=#Substitute#

[MeasureHome1]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=2
Substitute=#Substitute#

[MeasureHome2]
Measure=Plugin
Plugin=Plugins\WebParser.dll
Url=[MeasureWebsite]
StringIndex=3
Substitute=#Substitute#
And so on, for each WebParser measure. The skin worked fine for me after I made these changes. :)
arbrown
Posts: 12
Joined: September 12th, 2009, 3:20 am

Re: Regex Substitutions Not Working

Post by arbrown »

My hero! Worked like a charm, thanks!