KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
XPath (v1) contains no way to encode expressions. If you only have single OR double quotes then you can use expressions such as //review[@name="Bob's Pizza"] //review[@name='"Pizza" Pam'] But if you have BOTH e.g [Fred's "Fancy Pizza"] then you have to use something like this Escaping Strings in XPath (C++) to generate //review[@name=Concat("Fred's ",'"Fancy Pizza"')] Anyone have a function in c# to do this? Some links that are close Use the MVP.XML library and XPathVariable (a very good solution but a bit heavyweight for my needs). Doesn't encode where both " and ' are present Adds more arguments to the Concat operation than is necessary e.g. would return //review[@name=concat('Fred', "'", 's ', '"', 'Fancy Pizza', '"', '')] EDIT: A few answers have suggested escaping ' with ' and " with " but although this makes sense it does not work; try it using the XML fragment: <review name="Bob's Pizza"/> and the xpath //review[@name='Bob's Pizza']
Tags (comma-separated)
Save Edits
Cancel