• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 663
  • Last Modified:

find and replace in xsl

I have field data that looks something like this within my "teams" column

<div> SF. Giants </div>
<b> NY Mets </b>
<div><i> MLB </i></div>

I'm using XML to parse through the data and I want to know if its possible within XSL to replace the <div>, </div>, <b>, etc. tags and replace them with a NULL or whitespace.  Is this possible?

0
shuittny
Asked:
shuittny
  • 4
  • 2
1 Solution
 
Geert BormansInformation ArchitectCommented:
yes, make a template for each element
and put what you want in the output, in there

<xsl:template match="b">
   <xsl:text> </xsl:text>
   <xsl:apply-templates/>
   <xsl:text> </xsl:text>
</xsl:template>

will replace the b tags with spaces
0
 
shuittnyAuthor Commented:
what if <b>NY Mets</b> is the value of a field such as <xsl: value-of select=@team/>?  Would the response still hold?
0
 
Geert BormansInformation ArchitectCommented:
No, that would be a lot different of course
XSLT is mainly about transforming structure,
so if you post an XML as you did, one can safely assume taht you mean structure transformation

Anyway, you need some regular expression processing.
What do you want to happen, remove all occurences of tags from string?

It is possible, but it is quiet a more difficult task than you originally had
0
The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

 
shuittnyAuthor Commented:
I'll explain (probably should have done this previously)

I'm creating a formpage and on this page I have a richtext textarea field (let's call it baseball teams) in which users can bold, italicize, change text color, etc. (in IE). When the user access a reports page the field info. is extracted however it pulls the HTML tags within the field. So if the user has bold text, the reference tag will appear as part of the value even though the user never physically typed the tag, they just bolded the text. Ditto with changing colors, italicizing, making bullets, etc. I believe its because the tags are embedded and sent to the db before having a chance to be filtered out (and no I don't have real access to the db). Anyhow when I pull the information into another page the tags are embedded when in reality I want them removed.
0
 
Geert BormansInformation ArchitectCommented:
OK, I see, can you use XSLT2?
If not, I will have to work on an XSLT1 recursive template for dealing with this, that is quite a bit harder
0
 
Geert BormansInformation ArchitectCommented:
???
0

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now