7 Secret Gmail Features You Didn't Know Existed | The Huffington Post 7 Secret Gmail Features You Didn't Know Existed 02/19/2014 01:08 pm ET | Updated Feb 19, 2014 4.7k Alexis Kleinman Deputy Managing Editor Of Impact & Innovation, The Huffington Post Let's be real: Most of us are pretty dependent on our email. I mean, don't you guys often wake up to an inbox that looks like this? No?? Remember: No matter how full your inbox is, somebody else always has a crazier one than you do. And even if you think you know everything there is to know about Gmail, the email service near and dear to our hearts, there's always a trick or two you may not have heard of. We've compiled the seven best Gmail secrets below. From deleting your entire inbox in one click (we clearly could use this one) to tracking which sites are giving out your contact info, check out these handy tips: 1.

The dots in your Gmail address don't matter You can email JohnDoe@Gmail.com, John.Doe@Gmail.com or J.o.h.n.D.o.e.@Gmail.com and they would all go to the same place . The periods in your email address are actually totally meaningless. 2. You can hit the snooze button on your Gmail Using the free Gmail app Boomerang , you can open an email and set it to return to your inbox in a set amount of time. 3. Find out if your Gmail address has been spread and by whom If you add a "+" sign and then any words into your Gmail address , it still works. For example, if you were to subscribe to a shopping site and your email address is JohnDoe@Gmail.com, you could use the email address JohnDoe+Shopping@Gmail.com to sign up. You'll still get your emails and you'll be able to filter them more easily by which address emails are sent to. Plus, if you get any emails from another site to JohnDoe+Shopping@Gmail.com, you'll know who gave your email address out. 4.

You can get desktop notifications for emails If you're an obsessive email checker, Gmail can pop up with little notifications on your desktop when you get an email. You can set it to notify you when you get any email, or just when you get emails that are labeled "important." Just click the gear icon in your inbox, go to Settings, and scroll down to Desktop Notifications. 5. You can delete the entire contents of your inbox Ready for some spring cleaning? It's pretty easy to erase all of your emails. In your inbox, you'll see the number of emails you're viewing. For me, it says "1-25 of 19,752." Click on that to "show more messages." From there, click the little checkbox on the top left and select "All." From there, Gmail will ask if you really mean to select all of the messages in your inbox. After you've chosen literally every single message in your inbox, just click the trashcan to delete the messages. 6. You can un-send emails There's nothing worse than sending an email and immediately realizing that it had a typo in it or you sent it to the wrong person. Thankfully, there's a way to avoid that shame.

Gmail has a "lab" that gives you a few seconds between the moment you hit the send button and the moment it actually sends and allows you to stop an email from sending. All you have to do is click on the gear in your inbox, then hit "settings." Once you're there, go to "labs." If you scroll down, you'll find the lab called "undo send." Click "enable," then scroll down and hit "save changes." 7. You can use all different kinds of stars and symbols to keep your email organized There's more than just a yellow star at your disposal. If you click the gear symbol and then go to "general," you can scroll down and see "stars." There you'll see 6 different colored stars and 6 other symbols. You can choose to use 1, 4 or all of the different symbols to categorize your emails. Make sure to "save changes" when you're finished. You can also move the stars around and reorder them. If, say, blue is your favorite color, you can just use blue stars. If you put multiple stars in your arsenal, you just have to click on the star in your inbox repeatedly to make it change colors.

12 Signs and Symbols You Should Know 12 Signs and Symbols You Should Know By Mark Nichol What is the origin of various symbols used in English, and when is the use of each appropriate? Here’s a guide to twelve common signs, including how they developed and in which contexts they are used or avoided. 1. & (Ampersand) The ampersand was, at least until well into the nineteenth century, treated as the twenty-seventh letter of the alphabet, but its star has fallen, so that now it is used only informally except in registered names of businesses (“Ay, Bee & See Inc.”), which should be written as rendered; a comma preceding it is extraneous. The symbol comes from the cursive formation of the Latin word et (“and”), and the name is a slurring contraction of “and per se and,” which used to terminate schoolroom recitals of the alphabet: The phrase means “and by itself and”; instead of reciting, “. . . W, X, Y, Z, and,” children said, “. . .

W, X, Y, Z, and per se and” to clarify that “and” referred to a list item rather than serving as a conjunction for an item that was left unuttered. The symbol is also seen in &c. (“et cetera”), an alternate form of etc. American Psychological Association (APA) style allows the ampersand to link author names in an in-text citation (“Laurel & Hardy, 1921”), but other style guides call for using the word and. 2. * (Asterisk) The asterisk is used to call out a footnote or to refer to an annotation of special terms or conditions, to substitute for letters in profanity (“Oh, s***!”) or a name rendered anonymous (“the subject, M***”), to serve as a low-tech alternative to a typographical bullet , or provide emphasis in place of boldface (“Do *not* go there — the food is awful.”). It also has many specialized technical usages. Its name is derived from the Greek term asteriskos, meaning “little star,” and it was originally applied to distinguish date of birth from other references to years. 3.

@ (At Sign) Until the age of e-mail, the at sign was restricted mostly to commercial use, in purchase orders and the like, to mean “at the rate of” (“Order 1K widgets @ $2.50 per.”). It’s also used in displays of schedules for competitive sports to identify the event venue. Now it’s ubiquitous in email addresses and in social-networking usage, as well as computer protocols, but outside of those contexts, it is considered inappropriate for all but the most informal writing. 4. ¢ (Cent) This symbol for cent (from the Latin word centum, meaning “hundred”), unlike its cousin the dollar sign — it’s also used in many monetary systems other than that of US currency — is rare except in informal usage or for price tags. When it does appear, unlike the dollar sign, it follows rather than precedes the numeral, though as in the case of the dollar sign, no space intervenes. The equivalent usage in a context where dollar signs are employed is to treat the amount as a decimal portion of a dollar (“$0.99”); for clarity, a zero should always be inserted between the dollar sign and the decimal point.

The sign probably originated to distinguish an ordinary c from one denoting a monetary amount. 5. ° (Degree Sign) The sign for degrees of arc or degrees of temperature, which started out as a superscripted zero, was chosen for consistency with use of the minute (′) and second marks (″) employed in geometry and geography; those symbols originally stood for the Latin numerals I and II. The degree sign appears in technical contexts, but in general-interest publications, the word degree is generally used. In references to temperature, the symbol (and the designation of the temperature scale) immediately follows the associated numerical figure (“45°C”). This style is true of many publishing companies, though the US Government and the International Bureau of Weights and Measures prescribe a space between the number and the symbol (“45 °C”), while other publications omit the first letter space but insert another between the symbol and the abbreviation (“45° C”). 6.

” (Ditto Sign) The ditto sign, first attested three thousand years ago, signals that text shown above is to be repeated, as in a list in which the same quantity of various materials is intended to be expressed: apples 24 bananas ” oranges ” The word ditto, meaning “said,” derives from the Tuscan language, the immediate ancestor of Italian, but was borrowed into English hundreds of years ago. The word, its abbreviation (do.), and the symbol are considered inappropriate for most writing, though the term has often been used in informal spoken and written language to mean “(the same as) what he/she said.” Although the symbol has a distinct character code for online writing, straight or curly close quotation marks are usually employed to produce it. 7. $ (Dollar Sign) This symbol for the American dollar and many other currencies was first used to refer to the peso, which inspired the American currency system. Various origin stories for the symbol come in and out of fashion, but it’s most likely that it developed from an abbreviation of pesos in which the initial p preceded a superscript s; the tail of the initial was often superimposed on the s. A dollar sign with two vertical lines is a less common variant.

Most books and other formal publications tend to spell out dollars in association with a (spelled-out or numerical) figure, but periodicals usually use the symbol, as do specialized books about finance or business or others with frequent references to money. In international publications, when the symbol is used, for clarity, it is combined with the abbreviation US (“US$1.5 million” or “US $1.5 million”). The dollar sign is also used as an abbreviated reference to various functions in computer programming and similar contexts. 8. # (Number or Pound Sign, or Hash) This symbol evolved from the abbreviation for pound, lb. (a literal abbreviation for the Roman word libra, meaning “balance”), in which horizontal lines were superimposed on the vertical lines of the letters, producing something like the tic-tac-toe pattern used today. One of many other names for the sign, octotherp (also spelled octothorp or otherwise), was a jocular coinage by telecommunications engineers in the mid-twentieth century. The symbol is seldom used outside informal or highly technical or otherwise specialized contexts. 9.

% (Percent) The sign for indicating percentage developed in the Middle Ages over the course of hundreds of years, beginning as an abbreviation of percent (from the Latin phrase per centum, meaning “out of a hundred”). Its use is recommended only in technical contexts or in tabular material, where space it at a premium. (Some standards authorities call for a space between a number and this symbol, but most publications and publishers omit the space.) 10. ~ (Tilde) The tilde is used as a diacritical mark over various letters to indicate a variety of sounds in different languages, but it also appears midline, like a dash (and is sometimes called a swung dash), to denote “approximately (“Last night’s attendance: ~100”). It has technical connotations as well and is even used as a notation for recording sequences of action in juggling. The name, borrowed into English through Portuguese and Spanish from Latin, means “title.” 11. / (Slash, Solidus, Stroke, or Virgule) During the Middle Ages, this sign of many names, including those listed above, served as a comma; a pair denoted a dash.

The double slash was eventually tipped horizontally to become an equal sign and later a dash or hyphen. (The equal sign is still used as a proofreader’s mark to indicate insertion of a hyphen.) The slash — also called the forward slash to distinguish it from the backslash, which is used only in technical contexts — is an informal substitute for or. 12. _ (Underscore or Understrike) This artifact from the era of the typewriter was used on such devices to underline words to indicate emphasis in lieu of italics. As a survival of that function, words are sometimes bracketed by a pair of single underscores in email and other computer contexts to mark a word for emphasis (“That band totally _rocked_ the place.”). Indeed, as I typed this post in Microsoft Word, the program automatically converted rocked to italics. The symbol also appears frequently in email and website addresses and other technical contexts. Subscribe to Receive our Articles and Exercises via Email You will improve your English in only 5 minutes per day, guaranteed! Subscribers get access to our exercise archives, writing courses, writing jobs and much more! You'll also get three bonus ebooks completely free!

13 Responses to “12 Signs and Symbols You Should Know” Jaqueline on July 05, 2012 10:56 am I would like to know about the usage of the sing . when slhould I read it period, dot or point? Thank you. on July 05, 2012 11:21 am Sorry, I mean: sign NOT sing. Cynthia Harris on July 05, 2012 11:25 am Would you mind if I put some of your writing tips on my blog and in my newsletters…giving you and your website credit? Treathyl FOX on July 05, 2012 12:31 pm Excellent writing tips! I’ve been using that tilde mark all wrong! 🙂 Rick on July 05, 2012 1:16 pm Asterisk is also used in spreadsheet formulas as the mathematical “times” symbol rather than the instinctive X. Shortcuts for some of the symbols not found on your common QUERTY keyboard. Quicker than pulling up the Windows Character Map.

The number sequences below can be seen in the lower right corner of the Character Map when the symbol is selected. With NumLock on, hold the Alt key down and type the four digit sequence on the numeric section of your keyboard: ¢ Cent 0162 ² Superscript 2 or squared 0178 Tom on July 05, 2012 4:58 pm In mentioning the typewriter about the underscore sign, what about the sign for cent(s)? I didn’t know it was still available. Mark Nichol on July 05, 2012 5:13 pm Tom: When computer keyboards were being developed, in the effort to make the most frequently used symbols available without resorting to coding, the cent sign was omitted in favor of the caret. Mark Nichol on July 05, 2012 11:43 pm Jacqueline: It depends on the context: Generally, period is the term for use in prose, dot refers to the symbol used in Internet protocols such as website and email addresses, and point is the name for the mathematical symbol used in decimal notation (including references to monetary figures).

Baska on July 06, 2012 12:35 am I think that the “underscore” shows up in a lot of computer related contexts because originally you couldn’t use the “space”. A space was interpreted as “the end” (of this computer command). So if you wanted something to look like a space, (for example in “My Name”), you had to type something like “My_Name”. Jeremy on July 13, 2012 12:40 pm I find it interesting that the Roman numerals 0, I, and II were used for degrees, minutes, and seconds. I wonder if medieval or Roman surveyors used to use O for yards, I for feet and II for inches, which is why ‘ and ” are used for feet and inches today. Does anyone know? Jon on July 18, 2012 7:41 pm Jacqueline and Mark: being brought up with British English a “.” is always a “full stop”. Referring to it as a “period” is always – to me – a clear indication of an American English background.

Mohammad Mustafa , Thamar University on September 23, 2012 5:58 pm You may wish to: – Add more symbols and signs to your list, e.g. = , + -, &, $ , – Show differences between signs, symbols , and abbreviations. – Give some notes about voiced signs (i.e. to be read in words e.g. % and @, and unvoiced but help in in intonation,e.g. ?, !, / , :, – list complete arithmetic signs. _ Names of some signs written over letters of borrowed words , e.g. Naïve , vis-à-vis – Publish these medical symbols • ≥ Greater than or equal to •  increase • ≤ Less than or equal to • ♂ male Matthew on February 24, 2016 5:51 pm When someone replies to a message simply with the symbols (~ or (- What specifically are they saying? I gather it means some sort of mockery. How to Find or Validate an Email Address Generate regular expressions that match valid email addresses with RegexMagic. Don't have time to learn how to create a regular expression that matches valid email addresses?

Get RegexMagic and use its Email Address pattern to generate regular expressions that match valid email addresses according to your specifications in just a few clicks. You don't need to know or learn the regular expression syntax. How to Find or Validate an Email Address The regular expression I receive the most feedback, not to mention "bug" reports on, is the one you'll find right on this site's home page : \b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b. This regular expression, I claim, matches any email address. Most of the feedback I get refutes that claim by showing one email address that this regex doesn't match. Usually, the "bug" report also includes a suggestion to make the regex "perfect". As I explain below, my claim only holds true when one accepts my definition of what a valid email address really is, and what it's not. If you want to use a different definition, you'll have to adapt the regex.

Matching a valid email address is a perfect example showing that (1) before writing a regex, you have to know exactly what you're trying to match, and what not; and (2) there's often a trade-off between what's exact, and what's practical. The virtue of my regular expression above is that it matches 99% of the email addresses in use today. All the email address it matches can be handled by 99% of all email software out there. If you're looking for a quick solution, you only need to read the next paragraph. If you want to know all the trade-offs and get plenty of alternatives to choose from, read on. If you want to use the regular expression above, there's two things you need to understand. First, long regexes make it difficult to nicely format paragraphs. So I didn't include a-z in any of the three character classes. This regex is intended to be used with your regex engine's "case insensitive" option turned on. (You'd be surprised how many "bug" reports I get about that.) Second, the above regex is delimited with word boundaries , which makes it suitable for extracting email addresses from files or larger blocks of text.

If you want to check whether the user typed in a valid email address, replace the word boundaries with start-of-string and end-of-string anchors , like this: ^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$. The previous paragraph also applies to all following examples. You may need to change word boundaries into start/end-of-string anchors, or vice versa. And you have to turn on the case insensitive matching option. Trade-Offs in Validating Email Addresses Before ICANN made it possible for any well-funded company to create their own top-level domains, the longest top-level domains were the rarely used .museum and .travel which are 6 letters long. The most common top-level domains were 2 letters long for country-specific domains, and 3 or 4 letters long for general-purpose domains like .com and .info. A lot of regexes for validating email addresses you'll find in various regex tutorials and references still assume the top-level domain to be fairly short.

Older editions of this regex tutorial mentioned \b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b as the regex for email addresses in its introduction. There's only one little difference between this regex and the one at the top of this page. The 4 at the end of the regex restricts the top-level domain to 4 characters. If you use this regex with anchors to validate the email address entered on your order form, fabio@disapproved.solutions has to do his shopping elsewhere. Yes, the .solutions TLD exists and when I write this, disaproved.solutions can be yours for $16.88 per year. If you want to be more strict than [A-Z]{2,} for the top-level domain, ^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,63}$ is as far as you can practically go. Each part of a domain name can be no longer than 63 characters. There are no single-digit top-level domains and none contain digits. It doesn't look like ICANN will approve such domains either.

Email addresses can be on servers on a subdomain as in john@server.department.company.com. All of the above regexes match this email address, because I included a dot in the character class after the @ symbol. But the above regexes also match john@aol...com which is not valid due to the consecutive dots. You can exclude such matches by replacing [A-Z0-9.-]+\. with (?:[A-Z0-9-]+\.)+ in any of the above regexes. I removed the dot from the character class and instead repeated the character class and the following literal dot. E.g. ^[A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,}$ matches john@server.department.company.com but not john@aol...com. If you want to avoid your system choking on arbitrarily large input, you can replace the infinite quantifiers with finite ones.

^[A-Z0-9._%+-]{1,64}@(?:[A-Z0-9-]{1,63}\.){1,125}[A-Z]{2,63}$ takes into account that the local part (before the @) is limited to 64 characters and that each part of the domain name is limited to 63 characters. There's no direct limit on the number of subdomains. But the maximum length of an email address that can be handled by SMTP is 254 characters. So with a single-character local part, a two-letter top-level domain and single-character sub-domains, 125 is the maximum number of sub-domains. The previous regex does not actually limit email addresses to 254 characters. If each part is at its maximum length, the regex can match strings up to 8129 characters in length. You can reduce that by lowering the number of allowed sub-domains from 125 to something more realistic like 8. I've never seen an email address with more than 4 subdomains.

If you want to enforce the 254 character limit, the best solution is to check the length of the input string before you even use a regex. Though this requires a few lines of procedural code, checking the length of a string is near-instantaneous. If you can only use regexes, ^[A-Z0-9._%+-]{6,254}$ can be used as a first pass to make sure the string doesn't contain invalid characters and isn't too short or too long. If you need to do everything with one regex, you'll need a regex flavor that supports lookahead . The regular expression ^(?=[A-Z0-9._%+-]{6,254}$)[A-Z0-9._%+-]{1,64}@(?:[A-Z0-9-]{1,63}\.){1,8}[A-Z]{2,63}$ uses a lookahead to first check that the string doesn't contain invalid characters and isn't too short or too long. When the lookahead succeeds, the remainder of the regex makes a second pass over the string to check for proper placement of the @ sign and the dots.

All of these regexes allow the characters ._%+- anywhere in the local part. You can force the local part to begin with a letter by using ^[A-Z0-9][A-Z0-9._%+-]{0,63} instead of ^[A-Z0-9._%+-]{1,64} for the local part: ^[A-Z0-9][A-Z0-9._%+-]{0,63}@(?:[A-Z0-9-]{1,63}\.){1,125}[A-Z]{2,63}$. When using lookahead to check the overall length of the address, the first character can be checked in the lookahead. We don't need to repeat the initial character check when checking the length of the local part.

This regex is too long to fit the width of the page, so let's turn on free-spacing mode : ^(?=[A-Z0-9][A-Z0-9@._%+-]{5,253}$) [A-Z0-9._%+-]{1,64}@(?:[A-Z0-9-]{1,63}\.){1,8}[A-Z]{2,63}$ Domain names can contain hyphens. But they cannot begin or end with a hyphen. [A-Z0-9](?:[A-Z0-9-]{0,62}[A-Z0-9])? matches a domain name between 1 and 63 characters long that starts and ends with a letter or digit. The non-capturing group makes the middle of the domain and the final letter or digit optional as a whole to ensure that we allow single-character domains while at the same time ensuring that domains with two or more characters do not end with a hyphen.

The overall regex starts to get quite complicated: ^[A-Z0-9][A-Z0-9._%+-]{0,63}@ (?:[A-Z0-9](?:[A-Z0-9-]{0,62}[A-Z0-9])?\.){1,8}[A-Z]{2,63}$ Domain names cannot contain consecutive hyphens. [A-Z0-9]+(?:-[A-Z0-9]+)* matches a domain name that starts and ends with a letter or digit and that contains any number of non-consecutive hyphens. This is the most efficient way. This regex does not do any backtracking to match a valid domain name. It matches all letters and digits at the start of the domain name. If there are no hyphens, the optional group that follows fails immediately. If there are hyphens, the group matches each hyphen followed by all letters and digits up to the next hyphen or the end of the domain name. We can't enforce the maximum length when hyphens must be paired with a letter or digit, but letters and digits can stand on their own.

But we can use the lookahead technique that we used to enforce the overall length of the email address to enforce the length of the domain name while disallowing consecutive hyphens: (?=[A-Z0-9-]{1,63}\.)[A-Z0-9]+(?:-[A-Z0-9]+)*. Notice that the lookahead also checks for the dot that must appear after the domain name when it is fully qualified in an email address. This is important. Without checking for the dot, the lookahead would accept longer domain names. Since the lookahead does not consume the text it matches, the dot is not included in the overall match of this regex.

When we put this regex into the overall regex for email addresses, the dot will be matched as it was in the previous regexes: ^[A-Z0-9][A-Z0-9._%+-]{0,63}@ (?:(?=[A-Z0-9-]{1,63}\.)[A-Z0-9]+(?:-[A-Z0-9]+)*\.){1,8}[A-Z]{2,63}$ If we include the lookahead to check the overall length, our regex makes two passes over the local part, and three passes over the domain names to validate everything: ^(?=[A-Z0-9][A-Z0-9@._%+-]{5,253}$)[A-Z0-9._%+-]{1,64}@ (?:(?=[A-Z0-9-]{1,63}\.)[A-Z0-9]+(?:-[A-Z0-9]+)*\.){1,8}[A-Z]{2,63}$ On a modern PC or server this regex will perform just fine when validating a single 254-character email address.

Rejecting longer input would even be faster because the regex will fail when the lookahead fails during first pass. But I wouldn't recommend using a regex as complex as this to search for email addresses through a large archive of documents or correspondence. You're better off using the simple regex at the top of this page to quickly gather everything that looks like an email address. Deduplicate the results and then use a stricter regex if you want to further filter out invalid addresses. And speaking of backtracking, none of the regexes on this page do any backtracking to match valid email addresses. But particularly the latter ones may do a fair bit of backtracking on something that's not quite a valid email address. If your regex flavor supports possessive quantifiers, you can eliminate all backtracking by making all quantifiers possessive. Because no backtracking is needed to find matches, doing this does not change what is matched by these regexes. It only allows them to fail faster when the input is not a valid email address. Our simplest regex then becomes ^[A-Z0-9._%+-]++@[A-Z0-9.-]++\.[A-Z]{2,}+$ with an extra + after each quantifier.

We can do the same with our most complex regex: ^(?=[A-Z0-9][A-Z0-9@._%+-]{5,253}+$)[A-Z0-9._%+-]{1,64}+@ (?:(?=[A-Z0-9-]{1,63}+\.)[A-Z0-9]++(?:-[A-Z0-9]++)*+\.){1,8}+[A-Z]{2,63}+$ An important trade-off in all these regexes is that they only allow English letters, digits, and the most commonly used special symbols. The main reason is that I don't trust all my email software to be able to handle much else. Even though John.O'Hara@theoharas.com is a syntactically valid email address, there's a risk that some software will misinterpret the apostrophe as a delimiting quote. Blindly inserting this email address into an SQL query, for example, will at best cause it to fail when strings are delimited with single quotes and at worst open your site up to SQL injection attacks. And of course, it's been many years already that domain names can include non-English characters.

But most software still sticks to the 37 characters Western programmers are used to. Supporting internationalized domains opens up a whole can of worms of how the non-ASCII characters should be encoded. So if you use any of the regexes on this page, anyone with an @ทีเอชนิค.ไทย simply redirects to even though they're in the business of selling .ไทย domains. The conclusion is that to decide which regular expression to use, whether you're trying to match an email address or something else that's vaguely defined, you need to start with considering all the trade-offs. How bad is it to match something that's not valid? How bad is it not to match something that is valid? How complex can your regular expression be? How expensive would it be if you had to change the regular expression later because it turned out to be too broad or too narrow? Different answers to these questions will require a different regular expression as the solution. My email regex does what I want, but it may not do what you want. Regexes Don’t Send Email Don't go overboard in trying to eliminate invalid email addresses with your regular expression.

The reason is that you don't really know whether an address is valid until you try to send an email to it. And even that might not be enough. Even if the email arrives in a mailbox, that doesn't mean somebody still reads that mailbox. If you really need to be sure an email address is valid, you'll need to send an email to it that contains a code or link for the recipient to perform a second authentication step. And if you're doing that, then there is little point in using a regex that may reject valid email addresses. The same principle applies in many situations. When trying to match a valid date , it's often easier to use a bit of arithmetic to check for leap years, rather than trying to do it in a regex. Use a regular expression to find potential matches or check if the input uses the proper syntax, and do the actual validation on the potential matches returned by the regular expression. Regular expressions are a powerful tool, but they're far from a panacea. The Official Standard: RFC 5322 Maybe you're wondering why there's no "official" fool-proof regex to match email addresses. Well, there is an official definition, but it's hardly fool-proof.

The official standard is known as RFC 5322 . It describes the syntax that valid email addresses must adhere to. You can (but you shouldn't—read on) implement it with the following regular expression. RFC 5322 leaves the domain name part open to implementation-specific choices that won't work on the Internet today.

The regex implements the "preferred" syntax from RFC 1035 which is one of the recommendations in RFC 5322: \A(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)* | "(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f] | \\[\x01-\x09\x0b\x0c\x0e-\x7f])*") @ (?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?

| \[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3} (?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]: (?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f] | \\[\x01-\x09\x0b\x0c\x0e-\x7f])+) \])\z This regex has two parts: the part before the @, and the part after the @. There are two alternatives for the part before the @: it can either consist of a series of letters, digits and certain symbols, including one or more dots. However, dots may not appear consecutively or at the start or end of the email address. The other alternative requires the part before the @ to be enclosed in double quotes, allowing any string of ASCII characters between the quotes.

Whitespace characters, double quotes and backslashes must be escaped with backslashes. The part after the @ also has two alternatives. It can either be a fully qualified domain name (e.g. regular-expressions.info), or it can be a literal Internet address between square brackets. The literal Internet address can either be an IP address, or a domain-specific routing address. The reason you shouldn't use this regex is that it is overly broad. Your application may not be able to handle all email addresses this regex allows. Domain-specific routing addresses can contain non-printable ASCII control characters, which can cause trouble if your application needs to display addresses. Not all applications support the syntax for the local part using double quotes or square brackets. In fact, RFC 5322 itself marks the notation using square brackets as obsolete. We get a more practical implementation of RFC 5322 if we omit IP addresses, domain-specific addresses, the syntax using double quotes and square brackets. It will still match 99.99% of all email addresses in actual use today.

\A[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@ (?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\z Neither of these regexes enforce length limits on the overall email address or the local part or the domain names. RFC 5322 does not specify any length limitations. Those stem from limitations in other protocols like the SMTP protocol for actually sending email. RFC 1035 does state that domains must be 63 characters or less, but does not include that in its syntax specification. The reason is that a true regular language cannot enforce a length limit and disallow consecutive hyphens at the same time.

But modern regex flavors aren't truly regular, so we can add length limit checks using lookahead like we did before: \A(?=[a-z0-9@.!#$%&'*+/=?^_`{|}~-]{6,254}\z)

Question: In an e mail address, how is a symbol like a period said out loud?
Answer: Dot