24

Disclaimer: I admit that this is a personal pet peeve of mine, so feel free if to close this with extreme prejudice if I'm alone in this.

Some people have a tendency to end their sentences with an over-abundance of punctuation marks. The most common offences to this happens with exclamation marks and questions marks and more often than not it's in the title.

And opinion on this aligns closely with that of Sir Terry Pratchett. But even if you don't subscribe to that particular train of thought, I think it's clear that this construct doesn't really add anything to the clarity or expressiveness of the question.

Can we please get rid of them? I think it would be fairly easy to reduce any case where multiple question/exclamation marks are at the end of the title to a single instance.

Ideally we could also do this in the body (or inside the title), but obviously this is a lot more dangerous (e.g. "What does the !! operator do in C" should not be reduced to "What does the ! operator do in C", even if !! is not an operator in C).

What do you think?

Note that according to this query, there are 427 questions that end in "!!", 235 questions ending in "!!!", 28 questions ending in "!!!!" and 9 questions ending in 5 or more exclamation marks. There are also 4331 questions ending in "??", 1546 ending in "???", 221 ending in "????" and 61 ending in 5 or more question marks (note that the query is not perfect, as the numbers for 2 to 4 punctuations marks also include the higher counts, I'm too lazy to write the correct query).

As far as I know, this query also only finds questions that have not been edited to remove this. I guess that there are a lot more such questions posted than that, but most of them will be edited.

9
  • 8
    I just edit any such post I see and remove the noise.. not sure we need automatic removal. Jul 26, 2011 at 10:05
  • 2
    @Shadow: I'm not sure myself. More often than not those posts also need some other editing, so it's not a big stumbling block. Jul 26, 2011 at 10:08
  • 1
    You forgot !?! As in WTF!?!
    – M. Tibbits
    Jul 26, 2011 at 13:48
  • 1
    M. Tibbits: while that's not really nice either, it's harder to know what to replace it with. Is a "!" appropriate? Or a "?" Or even a (barely tolerable) "!?"? Jul 26, 2011 at 13:56
  • Hehe. Yeah, with my suggestion, I don't really have a solution for !?! Sorry!
    – M. Tibbits
    Jul 26, 2011 at 14:34
  • 7
    @Joachim, allow me to introduce you to my friend U+203D - INTERROBANG. The problem is now solved, innit‽
    – Pops
    Jul 26, 2011 at 15:16
  • 2
    "What does the !! operator do in C" should not be reduced to "What does the !! operator do in C" <-- you have the same amount of ! in both sentences, I cannot fix it, as it's only one symbol edit
    – Igor Milla
    Jul 26, 2011 at 15:48
  • 1
    So the consensus seems to be that it's mildly annoying but not worth fixing automatically. I can live with that. Jul 26, 2011 at 20:34
  • What about the 1s that come after !!!!!!!!!!!!!!!111 ? Jul 26, 2011 at 22:03

5 Answers 5

13

Great idea, I totally support this, making it so:

--- make sure all question titles end with at most one question mark
update
Posts
set Title = dbo.RegexReplace(Title, '\?{2,}$', '?')
where 
PostTypeId = 1 and 
Title like '%??'

7315 rows affected

--- make sure all question titles end with at most one exclamation point
update
Posts
set Title = dbo.RegexReplace(Title, '\!{2,}$', '!')
where 
PostTypeId = 1 and 
Title like '%!!'

1005 rows affected

--- make sure no question titles end with any number of periods
update
Posts
set Title = dbo.RegexReplace(Title, '\.+$', '')
where 
PostTypeId = 1 and 
Title like '%.'

89696 rows affected

--- make sure no question titles have extraneous spaces before the ?
update
Posts
set Title = dbo.RegexReplace(Title, '\s+\?$', '?')
where 
PostTypeId = 1 and 
Title like '% ?'

45201 rows affected

--- OK now you're just pissing me off
update
Posts
set Title = dbo.RegexReplace(Title, '[?!]+$', '?')
where 
PostTypeId = 1 and 
(Title like '%!?' or Title like '%?!')

~1500 rows affected

Also run for SO, SU, SF and the top ~15 SE 2.0 sites. It is also now enforced as a silent, automatic edit at time of question ask.

6
  • Interesting that this makes it so question titles cannot end in an ellipsis... Aug 5, 2011 at 20:48
  • correct, why would anyone ever want that... Aug 5, 2011 at 22:12
  • 16
    @Jeff: As Bill Dubuque points out in a comment, an ellipsis in the end can make sense on math.se. An example: "How to continue the sequence 2, 3, 5, 7, 11, 13, 17, ..." Aug 10, 2011 at 14:21
  • @HendrikVogt: "How to continue the sequence 2, 3, 5, 7, 11, 13, 17, ...?" You missed the question mark. Oct 12, 2011 at 5:09
  • 1
    Why didn't it affect this question: What does the C ??!??! operator do??!??!? I'm not saying that it should - I think that's an excellent title - I'm saying that I thought it would, and that because it doesn't you might want to revise that last regex. Oct 19, 2011 at 17:31
  • @KevinVermeer It actually did work, when I first tried it it was automatically removed. I got around it by adding a space to the end and then an ellipsis ??!??!? .... Then, it automatically removed the trailing periods but not the interrobang. Note that since then the question title has been edited to a plain ?!. Oct 24, 2011 at 14:06
13

Yes, I think this is annoying as well when it is overused. But I can imagine certain cases where two (but not more than two) exclamation marks would be acceptable to truly emphasize something. I've done that before, and I wouldn't want them removed.

And in addition, as you point out, it would potentially cause problems for operators in certain programming languages.

I think this is another example of the more general case that edit privileges and suggested edits were designed to solve. We really don't need to handle this with a regex.

Titles are pretty visible, and easily corrected by other users. This problem seems like it solves itself. Automatically replacing problematic grammatical constructs is a slippery-slope, and not one that I'm convinced is worth going down.

4
  • 2
    I agree, we should replace them, but not automagically. Jul 26, 2011 at 10:17
  • 4
    While I do understand the reasoning behind this, what exactly makes multiple exclamation marks different from salutations, which are automatically removed? Jul 26, 2011 at 10:35
  • @Joachim: Not sure. I suppose I can imagine more legitimate use cases for multiple punctuation marks than I can for any of the words we're matching with that regex. But if one of the devs is bored, I suppose this wouldn't be impossible to implement. Jul 26, 2011 at 10:41
  • on the slippery slope: come along and ride on a fantastic voyage | slide slide slippity-slide youtube.com/watch?v=HiXmO9eEuL8 Jul 30, 2011 at 9:53
9

I correct most double+ punctuation when I'm editing for other problems, though I usually wouldn't edit just for that. I do think that all the cleanup of these should just be done manually, it's way too hard to automate all the special cases on a programming site.

The one I also hate is the extra space in front of the question mark.

What's up with that ?

3
  • 7
    The extra space comes, e.g., from native speakers of French. In French you do put a space in front of :, ! and ?. Jul 28, 2011 at 5:49
  • 1
    @Hendrik, ah, good to know, I even took 4 years of French (a long time ago) and didn't know that. Jul 28, 2011 at 5:50
  • I've never learned French :-) I can only say "je ne parle pas français". Jul 28, 2011 at 5:52
4

The default position of the system should be to leave content as its author intended. If a human being decides to alter text, that is acceptable per the terms of using this site (ironically that item in the FAQ includes "?!"). However, that doesn't mean we should whimsically write scripts to alter content. The great power of automatically editing content should not be used lightly for trivial stylistic issues but saved for more egregious issues (if there are any).

People really, really don't like when they create content and then the computer changes it to something else. Look at the reaction the @lert removals caused. There shouldn't be automated editing of human-generated content without a really good reason, and your personal stylistic preferences don't meet that standard.

1
  • 3
    ?! is legitimate punctuation in English; it is called an interro-bang.
    – jscs
    Jul 26, 2011 at 17:47
-1

This would be best if it performed the correct substitutions instead:

  • Given any string of ! and ? outside a <code> block, reduce the length to at most two punctuation marks, retaining one of each if both are present.

  • Replace double exclamation points "!!" with the proper U+203C DOUBLE EXCLAMATION MARK: ‼

  • Replace double question marks "??" with the proper U+2047 DOUBLE QUESTION MARK: ⁇

  • Replace both "?!" and "!?" with the proper U+203D INTERROBANG: ‽

Precision is, of course, an important quality in a programmer, so I think it's clear that using the correct punctuation would show a certain attention to detail and make the whole site feel more professional.

The current situation, with people just littering punctuation anywhere and everywhere, is dreadful. Four exclamation points in a row? Who would do such a thing‽ It's barbaric, I tell you.


Sigh. I guess I'm the only one who finds ridiculous unicode characters inherently funny. Oh well. Yes, for the record, the above is a bad idea. Making fiddly changes to posts to correct stylistic issues is also a bad idea. There's any number of minor tweaks that would be easy to add, but other than stuff like stripping out the obvious salutations it's just going to confuse people when their text gets altered out of nowhere, and false positives will create massive headaches

Think about how the @lert-stripping in comments collides with some actual programming syntax, forcing people to use backticks in comments when they otherwise wouldn't need to. While it's well and good to say that code should be in code blocks or backticks, do we really want to require that in random cases just because it looks like poor style? If I'm talking about nullable types in C#, would it make sense that I could say 1 + 1 = 2 directly, but not num ?? 0 without an extra hurdle?

Interrobangs are still pretty cool, though.

12
  • I'm not sure if replacing those with Unicode would do any good. Jul 26, 2011 at 14:36
  • 3
    -1. I'm sorry, but these are mostly horrific ideas. Why would you ever chance text into obscure Unicode characters? This will add a lot of confusion, and will make searching and editing very difficult.
    – Kobi
    Jul 26, 2011 at 14:39
  • 5
    How can you not appreciate the beauty of the interrobang‽ Just look at it. Could there be any punctuation mark more lovely?
    – McCannot
    Jul 26, 2011 at 14:44
  • 1
    Gah, this was downvoted so much I didn't even notice it here before posting my own interrobang comment. Good on ya, McCannot.
    – Pops
    Jul 26, 2011 at 15:18
  • @Popular Demand: Yeah, it seems that interrobang isn't very popular around here. :[ What's up with that‽
    – McCannot
    Jul 26, 2011 at 15:20
  • It's more important to be practical than to be correct. Also the page you yourself linked states that this punctuation is non-standard, so in this case it's not even correct. Jul 26, 2011 at 15:53
  • 1
    @Kop: Er, yes. You noticed the part where I wasn't actually proposing that seriously, right? :\
    – McCannot
    Jul 26, 2011 at 15:57
  • I guess I didn't Jul 26, 2011 at 16:00
  • @McCannot - As every new user who posts a "What are your favorite programs" question will inevitable end up saying, Stack Exchange is Allergic to Fun. (And sarcasm can be tough to convey reliably.) Jul 27, 2011 at 0:44
  • @Neil Fein: Haha, I don't mind bad jokes being downvoted, and I'm an active member of the No Fun Allowed patrol on SO. It's people thinking I seriously suggested such a dumb idea that makes me feel :[.
    – McCannot
    Jul 27, 2011 at 0:48
  • Users using bad punctuation (or using sarcasm without a license) should be disallowed unicorns. Jul 27, 2011 at 0:51
  • 1
    @Neil: I'm not in the US so I'm disallowed the uniprong ponies you linked to :-/ (they do let me view the ads, 'though). Jul 27, 2011 at 6:39

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .