h5chauhan
h5chauhan

Reputation: 1291

Scala escaping newline and tab characters

I am trying to use the following code to get rid of tab and newline characters in the url but I still get newline and tab in my output. Need help figuring this out.

val referrerUrl = Option(event.getPage.getReferrerUrl).getOrElse(blank).replaceAll("\\p{C}|\\s+|\\r$|\\\\t|\\\\n|\\\\r", "")

The urls can be something like

http://www.bing.com/search?q=\tEnergy Source\tFuel (Coal)/Uranium Needed (tons)\tCO2 Emissions \r\n(tons)\tSulfur Dioxide and Other Emissions (tons)\tRadioactivity mSv (millisievert)\tSolid Waste (tons)\tAccidents\r\nQuarter 1\tCoal\t\t\t\t\t\t\r\n\tNuclear\t\t\t\t\t\t\r\nQuarter 2\tCoal\t\t\t\t\t\t\r\n\tNuclear\t\t\t\t\t\t\r\nQuarter 3\tCoal\t\t\t\t\t\t\r\n\tNuclear\t\t\t\t\t\t\r\nQuarter 4\tCoal\t\t\t\t\t\t\r\n\tNuclear\t\t\t\t\t\t\r\n

Upvotes: 2

Views: 4872

Answers (2)

som-snytt
som-snytt

Reputation: 39577

Triple quotes help for clarity because escapes are not processed:

scala> s.replaceAll("""\t""", "")
res5: String =
"http://www.bing.com/search?q=Energy SourceFuel (Coal)/Uranium Needed (tons)CO2 Emissions

Compare:

scala> s.replaceAll("\\\\t", "")
res3: String =
"http://www.bing.com/search?q=  Energy Source   Fuel (Coal)/Uranium Needed (tons)       CO2 Emissions

I didn't count the backslashes.

Upvotes: 0

pedrofurla
pedrofurla

Reputation: 12783

Your example code works perfectly with me:

scala> val s = "http://www.bing.com/search?q=\tEnergy Source\tFuel (Coal)/Uranium Needed (tons)\tCO2 Emissions \r\n(tons)\tSulfur Dioxide and Other Emissions (tons)\tRadioactivity mSv (millisievert)\tSolid Waste (tons)\tAccidents\r\nQuarter 1\tCoal\t\t\t\t\t\t\r\n\tNuclear\t\t\t\t\t\t\r\nQuarter 2\tCoal\t\t\t\t\t\t\r\n\tNuclear\t\t\t\t\t\t\r\nQuarter 3\tCoal\t\t\t\t\t\t\r\n\tNuclear\t\t\t\t\t\t\r\nQuarter 4\tCoal\t\t\t\t\t\t\r\n\tNuclear\t\t\t\t\t\t\r\n"
scala> s.replaceAll("\\p{C}|\\s+|\\r$|\\\\t|\\\\n|\\\\r", "")
res0: String = http://www.bing.com/search?q=EnergySourceFuel(Coal)/UraniumNeeded(tons)CO2Emissions(tons)SulfurDioxideandOtherEmissions(tons)RadioactivitymSv(millisievert)SolidWaste(tons)AccidentsQuarter1CoalNuclearQuarter2CoalNuclearQuarter3CoalNuclearQuarter4CoalNuclear

Upvotes: 2

Related Questions