Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^2: Lingua: Transform "wasn't" into "was not"

by Anonymous Monk
on Apr 15, 2014 at 18:52 UTC ( #1082381=note: print w/ replies, xml ) Need Help??


in reply to Re: Lingua: Transform "wasn't" into "was not"
in thread Lingua: Transform "wasn't" into "was not"

Thank you. Lingua::EN::Contraction is good enough for for my purpose.
(My work consists in comparing two English sentences and check if they are the same, but first I needed to normalize them, so this module does this, which is more than OK)

Maybe the inverse ("what's" to "what is") is not possible because there are some words like person's which doesn't (always) mean person is.
(I'm not a native English speaker, so I may be wrong about this)


Comment on Re^2: Lingua: Transform "wasn't" into "was not"
Select or Download Code
Re^3: Lingua: Transform "wasn't" into "was not"
by toolic (Chancellor) on Apr 15, 2014 at 23:19 UTC
    person's which doesn't (always) mean person is.
    You are correct. The following 2 sentences are equivalent:
    That person's code smells. The code of that person smells.
Re^3: Lingua: Transform "wasn't" into "was not"
by graff (Chancellor) on Apr 16, 2014 at 00:15 UTC
    It's not just the confusability between "possessive 's vs. contracted 's", but also confusability between "'s contracted from is vs. 's contracted from has" -- for example:
    • John's father is old. (possessive)
    • John's old. (contracted from "John is")
    • John's been sick. (contracted from "John has")
    There's also some possible ambiguity with 'd, although this is relatively rare:
    • He'd never done that before. (contracted from "He had")
    • He'd never do that again. (contracted from "He would")

    Apart from those cases, every other English contraction has a distinct full form.

    If you're just trying to see whether two strings are identical except for contracted vs. uncontracted forms, it should work if you normalize both strings by applying contraction wherever possible, then seeing if they match.

    I suppose there's a way to do it by expanding the contractions instead, but that's a lot more complicated.

      Shouldn't most of these s contractions (except the possessive case) be restricted to spoken English?

      Cheers Rolf

      ( addicted to the Perl Programming Language)

        That's what I was taught. But my current English teacher (she's from London) says it's no longer true. Using long forms in normal mails and e-mails feels very formal and old fashined, she says.
        لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ
        Shouldn't most of these s contractions (except the possessive case) be restricted to spoken English?

        Shouldn't text data always be "correct"? Of course it should! What's wrong with all those idiots who can't follow the rules when they type?! Why should programmers have to worry about stupid mistakes in text data?

        And while we're on the subject, why are so many people using those silly non-ASCII characters that look like apostrophes but really aren't? It really pisses me off when they do that - they should just be using the standard ASCII apostrophe, the way God intended!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1082381]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (9)
As of 2014-09-16 15:46 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (33 votes), past polls