Here are a few examples of how square brackets and dashes can be used in regular expressions:
1. [a-z] matches any single lowercase letter from a to z. This is similar to [aiu] but with a range instead of a list.
2. [0-9] matches any single digit from 0 to 9.
3. [a-zA-Z0-9] matches any single character that is a lowercase letter, uppercase letter, or digit. This is a common one to match alphanumeric characters.
4. [^a-z] matches any single character that is NOT a lowercase letter. The ^ at the start inverts the match to exclude characters in the set.
Regular Expressions for Regular Joes (and SEOs)Paul Shapiro
A basic introduction to Regular Expressions (aka RegEx or RexExp) for people in the SEO industry. First half is instructional and the second half is situation use cases.
Regular Expressions For Google Analytics By Robbin SteifJM Garcia
Google Analytics is one of the most widely used tools to measure and evaluate websites. Why use Reg Ex? In Google Analytics, you can use Regular Expressions to …
1. create filters. Many filters require Regular Expressions. If
you don’t know what filters are, you can start learning about them here.
2. create one goal that matches multiple goal pages.
Perhaps your “thank you” page has many names, but to you, all leads are the same
goal. So you can use Regular Expressions to “roll them up.”
3. fine-tune your funnel steps so that you can get exactly what you
need. Remember, Regular Expressions can be specific.
GAIQ - Regular expressions-google-analytics; one of the best resources; concepts explained in a very easy to understand descriptive method with examples
Natural language processing (NLP) involves making computers understand human language to interpret unstructured text. NLP has applications in machine translation, speech recognition, question answering, and text summarization. Understanding language requires analyzing words, sentences, context and meaning. Common NLP tasks include tokenization, tagging parts of speech, and named entity recognition. Popular Python NLP libraries that can help with these tasks are NLTK, spaCy, Gensim, Pattern, and TextBlob.
Natural language processing (NLP) involves making computers understand human language to interpret unstructured text. NLP has applications in machine translation, speech recognition, question answering, and text summarization. Understanding language requires analyzing words, sentences, context and meaning. Common NLP tasks include tokenization, tagging parts of speech, and named entity recognition. Popular Python NLP libraries that can help with these tasks are NLTK, spaCy, Gensim, Pattern, and TextBlob.
This is the first of a series of courses which I am putting together for anyone interested in learning about a world class graph database. This technology provides many entity relationship situations which are difficult to express in traditional relational or key-value NOSQL solutions.
Getting Up and Running with BDD on Railselliando dias
This document provides an overview of behavior driven development (BDD) and Cucumber, a tool for BDD. It discusses BDD concepts like user stories, outside-in development, and the red-green-refactor cycle. It then covers installing and getting started with Cucumber in a Rails application, including writing features, step definitions, and using helpers like Webrat. It also discusses potential code smells with Cucumber and additional resources.
This document provides an overview of behavior driven development (BDD) and Cucumber, a tool for BDD. It discusses BDD concepts like user stories, outside-in development, and the red-green-refactor cycle. It then covers installing and getting started with Cucumber in a Rails application, including writing features, step definitions, and using helpers like Webrat. It also notes potential "smells" to watch out for with Cucumber and provides additional resources.
Regular Expressions for Regular Joes (and SEOs)Paul Shapiro
A basic introduction to Regular Expressions (aka RegEx or RexExp) for people in the SEO industry. First half is instructional and the second half is situation use cases.
Regular Expressions For Google Analytics By Robbin SteifJM Garcia
Google Analytics is one of the most widely used tools to measure and evaluate websites. Why use Reg Ex? In Google Analytics, you can use Regular Expressions to …
1. create filters. Many filters require Regular Expressions. If
you don’t know what filters are, you can start learning about them here.
2. create one goal that matches multiple goal pages.
Perhaps your “thank you” page has many names, but to you, all leads are the same
goal. So you can use Regular Expressions to “roll them up.”
3. fine-tune your funnel steps so that you can get exactly what you
need. Remember, Regular Expressions can be specific.
GAIQ - Regular expressions-google-analytics; one of the best resources; concepts explained in a very easy to understand descriptive method with examples
Natural language processing (NLP) involves making computers understand human language to interpret unstructured text. NLP has applications in machine translation, speech recognition, question answering, and text summarization. Understanding language requires analyzing words, sentences, context and meaning. Common NLP tasks include tokenization, tagging parts of speech, and named entity recognition. Popular Python NLP libraries that can help with these tasks are NLTK, spaCy, Gensim, Pattern, and TextBlob.
Natural language processing (NLP) involves making computers understand human language to interpret unstructured text. NLP has applications in machine translation, speech recognition, question answering, and text summarization. Understanding language requires analyzing words, sentences, context and meaning. Common NLP tasks include tokenization, tagging parts of speech, and named entity recognition. Popular Python NLP libraries that can help with these tasks are NLTK, spaCy, Gensim, Pattern, and TextBlob.
This is the first of a series of courses which I am putting together for anyone interested in learning about a world class graph database. This technology provides many entity relationship situations which are difficult to express in traditional relational or key-value NOSQL solutions.
Getting Up and Running with BDD on Railselliando dias
This document provides an overview of behavior driven development (BDD) and Cucumber, a tool for BDD. It discusses BDD concepts like user stories, outside-in development, and the red-green-refactor cycle. It then covers installing and getting started with Cucumber in a Rails application, including writing features, step definitions, and using helpers like Webrat. It also discusses potential code smells with Cucumber and additional resources.
This document provides an overview of behavior driven development (BDD) and Cucumber, a tool for BDD. It discusses BDD concepts like user stories, outside-in development, and the red-green-refactor cycle. It then covers installing and getting started with Cucumber in a Rails application, including writing features, step definitions, and using helpers like Webrat. It also notes potential "smells" to watch out for with Cucumber and provides additional resources.
This document summarizes Adam Keys' presentation "Six Easy Pieces (Twice Over)", where he discusses important concepts for software developers based on Richard Feynman's lectures. The presentation is divided into two acts, where the first act from 2006 introduced non-syntactic aspects of Ruby and Rails, and the second act extracts the most important bits and argues they are applicable to all programmers. The concepts discussed include that programming should not suck, languages should make developers feel clever and powerful, the importance of building software with a balance of top-down and bottom-up approaches, keeping things simple, avoiding duplication, using testing as feedback, and how other languages can be borrowed from to write better code.
Module 8: Natural language processing Pt 1Sara Hooker
Delta Analytics is a 501(c)3 non-profit in the Bay Area. We believe that data is powerful, and that anybody should be able to harness it for change. Our teaching fellows partner with schools and organizations worldwide to work with students excited about the power of data to do good.
Welcome to the course! These modules will teach you the fundamental building blocks and the theory necessary to be a responsible machine learning practitioner in your own community. Each module focuses on accessible examples designed to teach you about good practices and the powerful (yet surprisingly simple) algorithms we use to model data.
To learn more about our mission or provide feedback, take a look at www.deltanalytics.org. If you would like to use this material to further our mission of improving access to machine learning. Education please reach out to inquiry@deltanalytics.org .
There's an old joke that goes, “The two hardest things in programming are cache invalidation, naming things, and off-by-one errors.” In this talk, we'll discuss the subtle art of naming things – a practice we do every day but rarely talk about.
There's an old joke that goes, “The two hardest things in programming are cache invalidation, naming things, and off-by-one errors.” In this talk, we'll discuss the subtle art of naming things – a practice we do every day but rarely talk about.
The document outlines a 5-step writing process used by Group 3: 1) Prewriting where they decide on a topic and research information; 2) Drafting where they write a first draft; 3) Revising where they make "big picture" changes to improve the draft; 4) Editing where they proofread to correct errors; and 5) Publishing where they share their finished work.
This document discusses patterns and pattern languages in object-oriented programming and Java. It describes how patterns connect together to form pattern languages that describe how to build particular systems or solve families of related problems. The document then discusses idioms specific to Java and proposes a pattern language for value-based programming in Java, with patterns like Immutable Value and Factory Method that build on each other to support representing values.
Students and professionals rely on Google's powerful search indexes everyday to access vast amounts of online information from servers worldwide. Google has become an essential part of online life since its founding in 1973, providing innovative products and technologies that meet most online needs. This document provides tips for using advanced Google search operators to refine queries and access specific types of files, websites, or topics through combinations of keywords, operators like AND/OR/NOT, and other special characters. It also mentions how hackers can misuse these operators for malicious purposes like reconnaissance of websites' security vulnerabilities.
How To Write A Synthesis Essay - Illustrated Tutorial - How To Write An ...Tracy Hill
Here is a 193-word creative writing piece set in an abandoned Walmart on a cold November night:
The howling wind whipped around the empty parking lot of the long-abandoned Walmart. Tall weeds and grass had overtaken the cracked asphalt in the years since the store had closed. A lone figure pulled their coat tighter and hurried across the lot, flashlight beam bouncing ahead of them.
As they approached the dark entrance, shadows seemed to shift and move within the store's depths. Shattered glass crunched underfoot as they stepped through the broken automatic doors. Darkness enveloped them, the flashlight barely piercing more than a few feet ahead. Dust swirled in the beams, illuminated motes dancing
This is a presentation I did for the new interns at Duo Software which I highlight the pros and cons of being creative and following widely used best practices in software development
This document provides guidance on writing an explanation. It discusses researching the topic thoroughly, understanding the information found, and planning the explanation. The key points are:
- Research the topic well by finding reliable information through searches and making sure you understand the content.
- Create a plan that organizes the main ideas and information in a logical sequence, such as numbering points, using diagrams, or mind maps.
- The plan should identify what each paragraph will cover, using present tense, correct terminology, and transition words to link ideas.
Recent natural language processing advancements have propelled search engine and information retrieval innovations into the public spotlight. People want to be able to interact with their devices in a natural way. In this talk I will be introducing you to natural language search using a Neo4j graph database. I will show you how to interact with an abstract graph data structure using natural language and how this approach is key to future innovations in the way we interact with our devices.
Better problem solving through scripting: How to think through your #eprdctn ...BookNet Canada
This is a resource part of Kris Coppieters' Tech Forum presentation: https://youtu.be/3OW96zE6N2I
Do you find yourself repeating the same task over and over? Or feeling certain there is a way to automate a task but it's just outside of your skill set? Kris Coppieters from Rorohiko has built a career solving just those kinds of problems. Whether it's scripting a solution from within InDesign, or using AppleScript to finish off some markup, Kris can show you how to bring high-level thinking to quick and dirty tasks.
techforum.booknetcanada.ca
#TechForum #ebookcraft
On Selecting JavaScript Frameworks (Women Who Code 10/15)Zoe Landon
For front-end developers, there's a never-ending stream of new things to learn. New frameworks, with new philosophies, seem to be released on a daily basis. How, then, do you pick which one to use? The answer, as it happens, has nothing to do at all with JavaScript.
The document provides various proofreading strategies for editing written work, including:
- Taking a break before proofreading to return with a fresh perspective.
- Asking others to review for errors and provide feedback.
- Reading content backwards or aloud to catch errors more easily.
- Using spellcheck and carefully checking for common personal errors.
- Determining the best format and environment for thorough proofreading.
The document provides guidance on using plain language when communicating complex information to general audiences. It discusses several techniques for testing language such as speaking to the intended audience, avoiding jargon, using common words with common meanings, knowing which grammar rules are most important for clarity, being precise, promoting descriptions over exceptions, avoiding hidden verbs, being actionable, and using visual aids. The goal is to provide concise yet comprehensive summaries.
A dispute on probably the most controversial feature in ES2016 leads us back to age old questions at the base of the most common practices of the development universe.
Do the “sacred laws” still apply?
jsDay 2016 closing keynote (http://2016.jsday.it/talk/a-class-action/)
The document provides guidance on using translators to improve reading and writing skills. It recommends using apps like WordLens to scan and translate text in real-time using a phone camera. It also advises readers to circle or write down unknown words while reading articles, look up those words in a translator, and then re-read the article to better understand it. The purpose is to expand vocabulary without losing time searching for individual words.
Full text search allows searching large documents and databases by examining all words in stored documents to match search terms, rather than just searching for exact matches. It works by indexing documents, including word positions, and applying rules like removing common words. Queries can then search for keywords, use wildcards, and order results by relevance. Common full text search solutions include APIs like Lucene and Xapian, and servers like Sphinx and Solr, which are used by many large companies and websites to enable powerful searching of large amounts of text data.
This document provides tips for improving Google search skills, including using specific keywords rather than questions, avoiding extra words, being specific rather than ambiguous, using brevity, checking spelling, becoming familiar with operators like minus signs, wildcards, and quotes, and citing image sources. The overall goal is to fine-tune search skills to get more valid and reputable results.
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
This presentation provides valuable insights into effective cost-saving techniques on AWS. Learn how to optimize your AWS resources by rightsizing, increasing elasticity, picking the right storage class, and choosing the best pricing model. Additionally, discover essential governance mechanisms to ensure continuous cost efficiency. Whether you are new to AWS or an experienced user, this presentation provides clear and practical tips to help you reduce your cloud costs and get the most out of your budget.
This document summarizes Adam Keys' presentation "Six Easy Pieces (Twice Over)", where he discusses important concepts for software developers based on Richard Feynman's lectures. The presentation is divided into two acts, where the first act from 2006 introduced non-syntactic aspects of Ruby and Rails, and the second act extracts the most important bits and argues they are applicable to all programmers. The concepts discussed include that programming should not suck, languages should make developers feel clever and powerful, the importance of building software with a balance of top-down and bottom-up approaches, keeping things simple, avoiding duplication, using testing as feedback, and how other languages can be borrowed from to write better code.
Module 8: Natural language processing Pt 1Sara Hooker
Delta Analytics is a 501(c)3 non-profit in the Bay Area. We believe that data is powerful, and that anybody should be able to harness it for change. Our teaching fellows partner with schools and organizations worldwide to work with students excited about the power of data to do good.
Welcome to the course! These modules will teach you the fundamental building blocks and the theory necessary to be a responsible machine learning practitioner in your own community. Each module focuses on accessible examples designed to teach you about good practices and the powerful (yet surprisingly simple) algorithms we use to model data.
To learn more about our mission or provide feedback, take a look at www.deltanalytics.org. If you would like to use this material to further our mission of improving access to machine learning. Education please reach out to inquiry@deltanalytics.org .
There's an old joke that goes, “The two hardest things in programming are cache invalidation, naming things, and off-by-one errors.” In this talk, we'll discuss the subtle art of naming things – a practice we do every day but rarely talk about.
There's an old joke that goes, “The two hardest things in programming are cache invalidation, naming things, and off-by-one errors.” In this talk, we'll discuss the subtle art of naming things – a practice we do every day but rarely talk about.
The document outlines a 5-step writing process used by Group 3: 1) Prewriting where they decide on a topic and research information; 2) Drafting where they write a first draft; 3) Revising where they make "big picture" changes to improve the draft; 4) Editing where they proofread to correct errors; and 5) Publishing where they share their finished work.
This document discusses patterns and pattern languages in object-oriented programming and Java. It describes how patterns connect together to form pattern languages that describe how to build particular systems or solve families of related problems. The document then discusses idioms specific to Java and proposes a pattern language for value-based programming in Java, with patterns like Immutable Value and Factory Method that build on each other to support representing values.
Students and professionals rely on Google's powerful search indexes everyday to access vast amounts of online information from servers worldwide. Google has become an essential part of online life since its founding in 1973, providing innovative products and technologies that meet most online needs. This document provides tips for using advanced Google search operators to refine queries and access specific types of files, websites, or topics through combinations of keywords, operators like AND/OR/NOT, and other special characters. It also mentions how hackers can misuse these operators for malicious purposes like reconnaissance of websites' security vulnerabilities.
How To Write A Synthesis Essay - Illustrated Tutorial - How To Write An ...Tracy Hill
Here is a 193-word creative writing piece set in an abandoned Walmart on a cold November night:
The howling wind whipped around the empty parking lot of the long-abandoned Walmart. Tall weeds and grass had overtaken the cracked asphalt in the years since the store had closed. A lone figure pulled their coat tighter and hurried across the lot, flashlight beam bouncing ahead of them.
As they approached the dark entrance, shadows seemed to shift and move within the store's depths. Shattered glass crunched underfoot as they stepped through the broken automatic doors. Darkness enveloped them, the flashlight barely piercing more than a few feet ahead. Dust swirled in the beams, illuminated motes dancing
This is a presentation I did for the new interns at Duo Software which I highlight the pros and cons of being creative and following widely used best practices in software development
This document provides guidance on writing an explanation. It discusses researching the topic thoroughly, understanding the information found, and planning the explanation. The key points are:
- Research the topic well by finding reliable information through searches and making sure you understand the content.
- Create a plan that organizes the main ideas and information in a logical sequence, such as numbering points, using diagrams, or mind maps.
- The plan should identify what each paragraph will cover, using present tense, correct terminology, and transition words to link ideas.
Recent natural language processing advancements have propelled search engine and information retrieval innovations into the public spotlight. People want to be able to interact with their devices in a natural way. In this talk I will be introducing you to natural language search using a Neo4j graph database. I will show you how to interact with an abstract graph data structure using natural language and how this approach is key to future innovations in the way we interact with our devices.
Better problem solving through scripting: How to think through your #eprdctn ...BookNet Canada
This is a resource part of Kris Coppieters' Tech Forum presentation: https://youtu.be/3OW96zE6N2I
Do you find yourself repeating the same task over and over? Or feeling certain there is a way to automate a task but it's just outside of your skill set? Kris Coppieters from Rorohiko has built a career solving just those kinds of problems. Whether it's scripting a solution from within InDesign, or using AppleScript to finish off some markup, Kris can show you how to bring high-level thinking to quick and dirty tasks.
techforum.booknetcanada.ca
#TechForum #ebookcraft
On Selecting JavaScript Frameworks (Women Who Code 10/15)Zoe Landon
For front-end developers, there's a never-ending stream of new things to learn. New frameworks, with new philosophies, seem to be released on a daily basis. How, then, do you pick which one to use? The answer, as it happens, has nothing to do at all with JavaScript.
The document provides various proofreading strategies for editing written work, including:
- Taking a break before proofreading to return with a fresh perspective.
- Asking others to review for errors and provide feedback.
- Reading content backwards or aloud to catch errors more easily.
- Using spellcheck and carefully checking for common personal errors.
- Determining the best format and environment for thorough proofreading.
The document provides guidance on using plain language when communicating complex information to general audiences. It discusses several techniques for testing language such as speaking to the intended audience, avoiding jargon, using common words with common meanings, knowing which grammar rules are most important for clarity, being precise, promoting descriptions over exceptions, avoiding hidden verbs, being actionable, and using visual aids. The goal is to provide concise yet comprehensive summaries.
A dispute on probably the most controversial feature in ES2016 leads us back to age old questions at the base of the most common practices of the development universe.
Do the “sacred laws” still apply?
jsDay 2016 closing keynote (http://2016.jsday.it/talk/a-class-action/)
The document provides guidance on using translators to improve reading and writing skills. It recommends using apps like WordLens to scan and translate text in real-time using a phone camera. It also advises readers to circle or write down unknown words while reading articles, look up those words in a translator, and then re-read the article to better understand it. The purpose is to expand vocabulary without losing time searching for individual words.
Full text search allows searching large documents and databases by examining all words in stored documents to match search terms, rather than just searching for exact matches. It works by indexing documents, including word positions, and applying rules like removing common words. Queries can then search for keywords, use wildcards, and order results by relevance. Common full text search solutions include APIs like Lucene and Xapian, and servers like Sphinx and Solr, which are used by many large companies and websites to enable powerful searching of large amounts of text data.
This document provides tips for improving Google search skills, including using specific keywords rather than questions, avoiding extra words, being specific rather than ambiguous, using brevity, checking spelling, becoming familiar with operators like minus signs, wildcards, and quotes, and citing image sources. The overall goal is to fine-tune search skills to get more valid and reputable results.
Similar to Regular expressions-google-analytics (20)
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
This presentation provides valuable insights into effective cost-saving techniques on AWS. Learn how to optimize your AWS resources by rightsizing, increasing elasticity, picking the right storage class, and choosing the best pricing model. Additionally, discover essential governance mechanisms to ensure continuous cost efficiency. Whether you are new to AWS or an experienced user, this presentation provides clear and practical tips to help you reduce your cloud costs and get the most out of your budget.
Dandelion Hashtable: beyond billion requests per second on a commodity serverAntonios Katsarakis
This slide deck presents DLHT, a concurrent in-memory hashtable. Despite efforts to optimize hashtables, that go as far as sacrificing core functionality, state-of-the-art designs still incur multiple memory accesses per request and block request processing in three cases. First, most hashtables block while waiting for data to be retrieved from memory. Second, open-addressing designs, which represent the current state-of-the-art, either cannot free index slots on deletes or must block all requests to do so. Third, index resizes block every request until all objects are copied to the new index. Defying folklore wisdom, DLHT forgoes open-addressing and adopts a fully-featured and memory-aware closed-addressing design based on bounded cache-line-chaining. This design offers lock-free index operations and deletes that free slots instantly, (2) completes most requests with a single memory access, (3) utilizes software prefetching to hide memory latencies, and (4) employs a novel non-blocking and parallel resizing. In a commodity server and a memory-resident workload, DLHT surpasses 1.6B requests per second and provides 3.5x (12x) the throughput of the state-of-the-art closed-addressing (open-addressing) resizable hashtable on Gets (Deletes).
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/temporal-event-neural-networks-a-more-efficient-alternative-to-the-transformer-a-presentation-from-brainchip/
Chris Jones, Director of Product Management at BrainChip , presents the “Temporal Event Neural Networks: A More Efficient Alternative to the Transformer” tutorial at the May 2024 Embedded Vision Summit.
The expansion of AI services necessitates enhanced computational capabilities on edge devices. Temporal Event Neural Networks (TENNs), developed by BrainChip, represent a novel and highly efficient state-space network. TENNs demonstrate exceptional proficiency in handling multi-dimensional streaming data, facilitating advancements in object detection, action recognition, speech enhancement and language model/sequence generation. Through the utilization of polynomial-based continuous convolutions, TENNs streamline models, expedite training processes and significantly diminish memory requirements, achieving notable reductions of up to 50x in parameters and 5,000x in energy consumption compared to prevailing methodologies like transformers.
Integration with BrainChip’s Akida neuromorphic hardware IP further enhances TENNs’ capabilities, enabling the realization of highly capable, portable and passively cooled edge devices. This presentation delves into the technical innovations underlying TENNs, presents real-world benchmarks, and elucidates how this cutting-edge approach is positioned to revolutionize edge AI across diverse applications.
5th LF Energy Power Grid Model Meet-up SlidesDanBrown980551
5th Power Grid Model Meet-up
It is with great pleasure that we extend to you an invitation to the 5th Power Grid Model Meet-up, scheduled for 6th June 2024. This event will adopt a hybrid format, allowing participants to join us either through an online Mircosoft Teams session or in person at TU/e located at Den Dolech 2, Eindhoven, Netherlands. The meet-up will be hosted by Eindhoven University of Technology (TU/e), a research university specializing in engineering science & technology.
Power Grid Model
The global energy transition is placing new and unprecedented demands on Distribution System Operators (DSOs). Alongside upgrades to grid capacity, processes such as digitization, capacity optimization, and congestion management are becoming vital for delivering reliable services.
Power Grid Model is an open source project from Linux Foundation Energy and provides a calculation engine that is increasingly essential for DSOs. It offers a standards-based foundation enabling real-time power systems analysis, simulations of electrical power grids, and sophisticated what-if analysis. In addition, it enables in-depth studies and analysis of the electrical power grid’s behavior and performance. This comprehensive model incorporates essential factors such as power generation capacity, electrical losses, voltage levels, power flows, and system stability.
Power Grid Model is currently being applied in a wide variety of use cases, including grid planning, expansion, reliability, and congestion studies. It can also help in analyzing the impact of renewable energy integration, assessing the effects of disturbances or faults, and developing strategies for grid control and optimization.
What to expect
For the upcoming meetup we are organizing, we have an exciting lineup of activities planned:
-Insightful presentations covering two practical applications of the Power Grid Model.
-An update on the latest advancements in Power Grid -Model technology during the first and second quarters of 2024.
-An interactive brainstorming session to discuss and propose new feature requests.
-An opportunity to connect with fellow Power Grid Model enthusiasts and users.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...alexjohnson7307
Predictive maintenance is a proactive approach that anticipates equipment failures before they happen. At the forefront of this innovative strategy is Artificial Intelligence (AI), which brings unprecedented precision and efficiency. AI in predictive maintenance is transforming industries by reducing downtime, minimizing costs, and enhancing productivity.
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on integration of Salesforce with Bonterra Impact Management.
Interested in deploying an integration with Salesforce for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Digital Marketing Trends in 2024 | Guide for Staying AheadWask
https://www.wask.co/ebooks/digital-marketing-trends-in-2024
Feeling lost in the digital marketing whirlwind of 2024? Technology is changing, consumer habits are evolving, and staying ahead of the curve feels like a never-ending pursuit. This e-book is your compass. Dive into actionable insights to handle the complexities of modern marketing. From hyper-personalization to the power of user-generated content, learn how to build long-term relationships with your audience and unlock the secrets to success in the ever-shifting digital landscape.
2. j Ust a story about Regular People
and Regular Expressions . . .
Google Analytics is one of the When I first starting working with Google
Analytics, I was an analyst. A marketing
person. Not a techie.
most widely used tools to measure and Back then, the Google Analytics
documentation kept referencing something
evaluate websites. The GA team has called Regular Expressions. I could see that
my goals and filters weren’t doing what
they needed to do, but, not being a techie, I
worked hard to make it easier and more didn’t know how to implement RegEx and
fix them.
intuitive than ever before. However, (In fact, I knew so little about this space
that when a friend referred to Regular
Expressions as “RegEx,” I wondered what
you may still feel that you are limited he was talking about.)
Slowly I taught them to myself, with the
by the Google Analytics out-of-the box help of Wikipedia and a friend in Australia.
Then I began to blog about them, using
non-techie language. I got a letter from
functionality. a trainer on the other side of the pond
who told me that when he trained people
in Regular Expressions, he turned them
If so, it’s time for you to learn loose on the LunaMetrics blog. Eventually,
Google invited my company to become
a Google Analytics Certified Partner.
about Regular Expressions and how GA Our company helped rewrite the Google
Analytics Help Center section on Regular
Expressions. And to this day, I get random
uses them. emails from random people, asking me to
troubleshoot their RegEx.
2
3. wH y u se r eg Ex ? A word about language.
What would a how-to guide be without some
dictionary-type advice? Here are some of the
conventions we may use:
In Google Analytics, you can use GA: The abbreviation for Google Analytics
Regular Expressions to ... RegEx: the abbreviation for Regular
Expressions (singular and plural)
create filters. Many filters require Regular Expressions. If
you don’t know what filters are, you can start learning about them here.
Plain text: Not Regular Expression Text
String: any assembly of characters and/or
spaces. A word could be a string, a sentence
create one goal that matches multiple goal pages.
Perhaps your “thank you” page has many names, but to you, all leads are the same
could be a string, a URL could be a string.
Target String: the string you are attempting
to match with your RegEx.
goal. So you can use Regular Expressions to “roll them up.” Example: when I use robb?(y|i)n to match
fine-tune
my name, Robbin (the one with all the
funny characters), robb?(y|i)n is the
your funnel steps so that you can get exactly what you
Regex, and my name, Robbin, is a target
need. Remember, Regular Expressions can be specific.
string.
What are Regular Expressions, anyway? Regular Expressions are about
“power matching.” If you need to create a goal that matches multiple thank-you A word about format.
pages – that is power matching. If you need to write a filter that matches multiple
URLs, but only know what a piece of each URL looks like – again, that is power I just hate when I read a post or book and
matching. they write that the keyword is “sodapop.”
Or “vanilla.” Or anything that has quotation
But what about Advanced Segments? marks around it. Because you never know if
Can’t I skip this whole RegEx thing now that the quotation marks are part of the stuff you
Google Analytics has Advanced Segments? are working on, or are just used to separate
Well, no. Advanced Segments are lovely, and they often make filters that word from the rest of the sentence.
unnecessary. But they don’t work the same way as filters do. And you Consequently, I put all target strings and
will still need Regular Expressions to create interesting and complicated all RegEx in boldface – no quotation marks
goals, and to accommodate your website designer who doesn’t do things needed.
the Google Analytics-friendly way. And sometimes, you will want to
use Regular Expressions in your Advanced Segments. 3
4. IndEx
The Backslash page 7
| The Pipe page 8
? The Question Mark page 9
() Parentheses page 10
Regular Expressions page 5 [-] Square Brackets & Dashes page 12
Learn About RegEx page 6 {} Braces page 14
. The Dot page 15
+ The Plus Sign page 16
Let’s Practice page 21
* The Star page 17
NOT The End page 22 .* The Dot Star page 18
^
The Caret page 19
$ The Dollar Sign page 20
4
5. Regular Expressions match as much as possible.
Most of this ebook will be about all the characters that make up There are two interesting questions here, and you might feel some
the Regular Expressions “toolset.” But first – you’ll be lost if you righteous indignation as you ask them. I know that I felt this way
don’t understand the concept of matching as much as possible. when I was first learning RegEx:
Sometimes you will be very surprised at how much it matches, just 1. Why would they match? Not a single one of those phrases
as I was when I was new at RegEx. includes the entire name.
Let’s start with an example: Our company often wants to see all 2. How can those possibly be Regular Expressions? There are no
the keywords that include our company name (branded search) RegEx characters!
and, more often, we want to see all the keywords that don’t include
our company name (unbranded search). Below are two of the
Regular Expressions we use when we are including or excluding a nswErs
our company name: 1. They match because Regular Expressions in GA will match and
Luna match until they aren’t allowed to any more. That’s why Metric
Metric matches the target string, LunaMetrics – if it matches any part
of the word, it will match the whole word.
2. And the characters? You don’t need to have those characters
just to have a Regular Expression, and having the characters
doesn’t necessarily make it a RegEx. All you need to do is put the
expression into a field that is sensitive to RegEx. For example,
when you write a Google Analytics goal, you get to choose “head
A friend wrote a question on a forum. He wanted match,” “exact match” or “Regular Expression.” As soon as you
to exclude all traffic that was coming from Google referring choose “Regular Expression,” the field becomes sensitive to
links, all around the world. He tried to create a really RegEx, and all the rules of RegEx apply. You often need to use
fancy RegEx that would include all countries, something like little RegEx characters – but not always.
www.google.(com|co.(au|uk|il))/(docs|analytics|reader) etc.
I wrote back: “Why don’t you just use
the word google as your RegEx?”
5
6. H ow d o I l Ea rn
a boUt r eg Ex ?
of course, reading this eBook will help you, but you can only
get so far by reading. Ultimately, understanding and writing Regular Expressions
There are a lot of great resources
to check your Regular Expressions. If you use the
(RegEx) is a little bit like getting your first job. You can’t get hired without PC, I strongly recommend the RegEx Coach:
experience, and you can’t get experience without getting hired.
http://www.weitz.de/regex-coach/
With RegEx, you don’t really understand them until you use them, and you can’t
Unfortunately, it is unavailable for Mac, so an
really use them until you understand them. So you have to learn a little bit, and then
alternative would be the RegEx Match Maker:
use a little bit and get them wrong, and then go back to the book and learn a little bit
more. http://sourceforge.net/projects/
quregexmm/
The other problem you will have with RegEx is that each character is easy. Put them
all together and you get this: There are many others.
/?cid=[0-9]{3,3}.
And that one wasn’t very hard. The more you work with them, the easier they’ll get.
So master each step, put a couple together, make some mistakes and get going.
Soon you’ll be a RegEx pro.
6
7. get started
The bAckslAsh
I always encourage people to start their
“RegEx career” by learning the characters, and the best one
to start with is the backslash. A backslash is different from
all the other characters, as you will see. It provides a bridge Example Alert: Now, when we are creating a Google
between Regular Expressions and plain text. Analytics search and replace filter for the page above, we
A backslash “escapes” a character. What does “escape” can use that backslash and know that GA understands we
mean? It means that it turns a Regular Expression character are looking to match to a real question mark, like so:
into plain text. If that doesn’t make sense to you yet, hold on
– I have a few examples coming.
Perhaps /folder?pid=123 is your goal page. The problem
we have is that the question mark already has another use in
Regular Expressions – but we need for it to be an ordinary
question mark. (We need it to be plain text.)
We can do it like this:
/folder?pid=123
Notice how there is a backslash in front of the question
mark – it turns it into a plain question mark.
Why are backslashes
about getting started?
1. You will use them more than any other RegEx character.
2. They turn special RegEx characters
into everyday, plain characters.
7
8. |
not-very-wild cards
The pIpe
The pipe is the simplest of Regular Expressions, and it is Here you can see a screen shot of a Google Analytics goal setup
the one that all Regular People (that’s you and me) should that includes the two pages suggested above, with a pipe:
learn. It means or .
Here’s a simple example: Coke|Pepsi . A soft-drink
blog might use that expression with their Google Analytics
keyword report to find all examples of searches that came
to their blog using either the keyword Coke or the keyword
Pepsi.
Here’s another example: Let’s say you have two thank-
you pages, and you need to roll them up into one goal.
The first one is named thanks, and the second is named
confirmation. You could create your goal like this:
confirmation|thanks
That says, match either of those pages. Notice that the pipe
matches everything on either side of it.
And where is the Pipe,
anyway? Keyboards
differ, but you’ll most
likely find it above your
Enter key.
8
9. not-very-wild cards
The quEStion MarK
A question mark means, “The last item (which, for
now, we’ll assume is the last character) is optional.” So
remember how I wrote that people misspelled my name,
often spelling it with one b instead of two? With a RegEx of
?
Robb?in, I can capture both Robbin and Robin. That’s
because the question mark means that the expression will
match even if the second “b” isn’t in the target string –
because it is optional.
In case you’re wondering – I often use this RegEx to filter
keywords on my company’s website, so that I can quickly
pull out keywords that were clearly looking for me instead of
our services.
That way, I capture both the people who spell my name
correctly and those who misspell. In fact, when I do a report
that excludes branded keywords, I usually try to exclude
both our company name and my name. Like this:
9
10. ()
grouping
paRentHeseS
Parentheses in Regular Expressions work the same way that they If you wanted it to execute differently, you had to force the
do in mathematics. This falls into the category of “Things I should equation with parentheses – like this:
have learned had I been paying attention in grade school.”
(2 + 3) x 5 = 25
Now, before I get into this long explanation, I want to provide an
example. This is because I user-tested this whole ebook, and the Above, I’ve changed the same numbers to become 2 plus 3 equals
testers complained, “Robbin, sometimes we just need to see the 5, times 5 equals 25. And that’s the value of parentheses in math. I
example up front.” So here is an example of parentheses: see from my very old notes that Mrs. Petrowski called it the Order
of Operations.
/folder(one|two)/thanks
So what about Regular Expressions? Why would we need
This matches two URLs, folderone/thanks and foldertwo/thanks. parentheses there? In order to understand our need, we have to
look at other expressions (just like we had to understand the math
OK, on with the explanation. Remember, we were talking about
operations symbols in order to understand why parentheses are
things we should have learned had we been paying attention in
needed.)
school.
Remember how your math teacher said that if you had an
equation, the division and multiplication got done before the
subtraction and addition? Well, since I wasn’t paying attention in
Mrs. Petrowski’s 4th-grade class, I pulled out my old notes, and
here is what I found:
2 + 3 x 5 = 17
(Right? 3 times 5 equals 15, plus 2 equals 17.)
10
11. paRentHeseS pt. 2
Let’s use pipes as our example. I wrote that this expression: If we only want the /thanks and the /thanksalot pages to be
part of our goal, we could do it like this: /thanks(alot)?
confirmation|thanks
This means, the target string must include /thanks, but alot is
means everything on one side of it (confirmation) or everything optional. So it matches both /thanks and /thanksalot. And the
on the other, i.e. thanks. /thankyou page will never get included, because there is no s
in its URL (so it doesn’t match the beginning of this RegEx, i.e.
But as we start to think about why we would want to use thanks).
parentheses, we can revisit that example above and ask ourselves,
“What happens when we don’t want to grab everything on either
side of the pipe?” Like this example:
/foldertwo/thanks
/folderone/thanks
A great way to represent this in RegEx would be
/folder(one|two)/thanks
So we are allowing the RegEx to match either the thanks page
in folderone or the thanks page in foldertwo – and it is the
parentheses that allow us to group so that the pipe knows what to
choose between.
This next example is a little different. Again, we’re going to roll
two URLs into one goal, but this time, we use the parentheses to
tell the question mark what is optional. This website has three
thank-you pages:
/thanks
/thankyou
/thanksalot 11
12. grouping
squArE BraCkeTs
d
& aShes
[-] pt. 1
I usually like to introduce just one character at a
time. But these two are a little like salt and pepper. True, you can
use just salt or just pepper, but they get served together so often
that they are a set. And so we have both square brackets [ ] and
dashes –
With square brackets, you can make a simple list, like this: [aiu] .
This is a list of items and includes three vowels only. Note: Unless aDvaNCed tIp
Characters that are usually special, like $ and ?, no longer are
we use other expressions to make this more complicated, only one
special inside of square brackets. The exceptions are the dash,
of them will work at a single time.
the caret (more on this one later) and the backslash, which still
So p[aiu]n will match pan, pin and pun. But it will not match works like all backslashes do inside the square brackets.
pain, because that would require us to use two items from the
[aiu] list, and that is not allowed in this simple example.
You can also use a dash to create a list of items, like this:
[a-z] – all lower-case letters in the English alphabet
[A-Z] – all upper-case letters in the English Alphabet
[a-zA-Z0-9] – all lower-case and upper-case letters, and digits.
(Notice they are not separated by commas.)
Dashes are one way of creating a list of items quickly, as you can
see above. 12
13. SquArE bRacKeTs & dAsheS pt. 2
Here is an example of how you might use square brackets by
themselves. Let’s say you have a product group, sneakers,
and each product name has a number appended to it in the
URL (we see this a lot with industrial products where they
don’t have zippy names). So you might have sneakers450,
sneakers101, etc.
The product manager for sneakers450 through
sneakers458 wants a special profile of visits that only
included his product pages. So you might include a filter
like the one below, which makes it easy to include all the
product names, using square brackets:
13
14. grouping
braCes {}
Braces are not covered in the Google Analytics documentation, but On the other hand, if there is only one number in the braces,
they are supported by GA. Braces are curly brackets, {like this}. the match will only work if you have exactly the right number of
characters.
Braces repeat the last “piece” of information a specific number of
times. They can be used with two numbers, like this: {1,3}, or with So here’s an example: Let’s say you are the area manager for
one number, like this: {3}. When there are two numbers in the Allegheny County (where I live), and you want to see all the visits
braces, such as {x,y}, it means, repeat the last “item” at least x times from people who touched a page on the site that had 152XX in the
and no more than y times. When there is only one number in the URL – that’s the Allegheny County ZIP code. You could create an
braces, such as {z}, it means, repeat the last item exactly z times. Advanced Segment using a Regular Expression with square brackets
and a brace, like this:
Here is my two-number-in-braces example:
Lots of companies want to take all visits from their IP address out of
their analytics. Many of those same companies have more than one
IP address – they often have a block of numbers. So let’s say that
their IP addresses go from 123.145.167.0 through 123.145.167.99
– how would we capture that range with braces?
Our regular expressions would be:
123.145.167.[0-9]{1,2} This means, if the visit included a trip to a page that included 152
and any other two digits (i.e. 152XX) in the url, include the visit in
Notice that we actually used four different RegEx characters: We this segment.
used a backslash to turn the magic dot into an everyday dot, we used
brackets as well as dashes to define the set of allowable choices, i.e.
the last “item”, and we used braces to determine how many digits
could be in the final part of the IP address.
14
15. ThE
wilder cards
doT
.
A dot matches any one character. So let’s go to a GA example. Let’s say your company owned a block
of IP addresses:
When I was new at Regular Expressions, dots were perhaps the
strangest thing for me to deal with. I couldn’t figure out what “one 123.45.67.250 through 123.45.67.255
character” meant. And I couldn’t understand why they mattered
much. They didn’t seem very wild, as wild cards go. You want to create a Regular Expression that will match the entire
Ultimately, I learned that the list of characters included all the block, so that you can take your company data out of your Google
characters I could find on my keyboard or any other – the alpha, Analytics. Since only the last character changes, you could do it
the numeric, the special characters too. A dot even matches a with this expression:
whitespace. I also learned there aren’t that many uses for dots by
themselves, but they are very powerful when combined with other 123.45.67.25.
RegEx characters. This would match all the required IP addresses. Note that it would
Let me start with some examples of how the dot can be used alone. also match 123.45.67.256 and 123.45.67.25% (because a dot
Take this Regular Expression: matches any one character). However, each grouping (each octet)
in the IP address only goes up to 255, and we never see percent
.ite signs or other non-numbers in IP addresses, so you would be safe
with this.
…. It would match site, lite, bite, kite. It would also match
%ite and #ite (because % and # are characters, too.) However, it
wouldn’t match ite. Why not? A dot matches one character, and Have you ever noticed that you can type
ite includes zero characters for the dot to match (i.e., it didn’t index.php into a search box that is sensitive to Regular
match any). Expressions and it works – even though you didn’t
escape the dot, the way you were supposed to – i.e.,
index.php ? That’s because the dot matches any one
character, and one of the characters the dot matches is
… a dot. And since it is unlikely that a non-dot will get
in there, it usually works just fine.
15
16. +
wilder cards
ThE plUs SIgn
A plus sign matches one or more of the former items, which, as
usual, we’ll assume is the previous character. (It can be more
complicated, but let’s start easy.) So the list of possible matches is
clear: the former character. And the number of matches is clear:
one or more.
Here’s an example from the world of literature: When a character
trips and falls on his face, he often says Aaargh! Or maybe it’s
Aaaargh! or just Aargh! In any case, you could use a plus sign to
match the target string, like this: aa+rgh. That will match aargh
and aaargh and aaaaaaaaargh … well, you understand. Notice,
however, that it won’t match argh. Remember, it is one or more
of the former items.
Does anybody really use plus
signs anymore? Sure they do
– you may find that you use
this expression rarely, but the
one time you need it, it will be
very valuable.
16
17. *
wilder cards
ThE
People really
StAr misuse stars. They have specific
meanings in other applications. They don’t mean the same thing
in RegEx as they do in some of those other applications, so be
careful here.
Stars will match zero or more of the previous items. They function
just like plus signs, except they allow you to match ZERO (or
more) of the previous items, whereas plus signs require at least
one match. For the time being, let’s just define “previous item” as
“previous character.”
Since stars are so much like plus signs, I’ll start with the same
example and point out the differences.
So once again, when a character trips and falls on his face, he
often says Aaargh! Or maybe it is Aaaargh! or (unlike last time)
just Argh! In any case, you could use a star to match the target
string, like this: aa*rgh. That will match aargh and aaargh and
aaaaaaaaargh – and the big difference from the plus sign is that
it will also match argh (i.e. no extra “a’s” added).
You’ll notice that I don’t include any screen shots for stars (or plus
signs, for that matter.) While they are both very important, they
are used very extensively with dots as the wildest cards.
17
18. wildest card
.*
ThE dot StAr
There are two Regular Expressions
aDvaNCed tIp
that, when put together, mean “get
Custom Advanced filters in Google Analytics often require you to “get
everything.” They are a dot followed
all” and make it a variable. For example, when you want to add the
by a star, like this:
hostname to the Request URL (a very common filter), do it like this:
/folderone/.*index.php
In this example, our Regular
Expression will match to everything
that starts with folderone/ and
ends with index.php . This means
if you have pages in the /folderone
directory that end with .html (I see
that a lot), they won’t be a match to
the above RegEx.
Now that you have an example, you might be interested in why this
works. A dot, you may remember, means get any character. A star
means repeat the last character zero or more times.
This means that the dot could match any letter in the alphabet,
any digit, any number on your keyboard. And the star right after Notice how we put parentheses around the .*, like this: (.*) – you
it matches the ability of the dot to match any single character, and can see this in the boxes on the right side of the filter. To GA, in the
keep on going (because it is zero or MORE) – so it ends up matching advanced filter section, this means get all, and put it in a variable. So
everything. we get the entire hostname (in a variable), the entire request URL in
a variable, and then in the bottom field, we are able to specify get the
Hard to wrap your head around this one? Trust me, it works. first variable in Field A, and to it, add the first variable in Field B.
18
19. ^
anchors
ThE
When you use
careT a caret in your Regular Expression,
you force the Expression to match only strings that start exactly
the same way your RegEx does.
I see carets misused all the time on various Google Analytics help
groups. It goes something like this:
“I want to include only subfolder2 in my profile. My URLs look
like: http://www.mysite.com/folder1/subfolder2/index.html. I
created the include filter and the Regular Expression, which looks
like this: ^/subfolder2/index.html. Why isn’t it working?”
The reason it doesn’t work is that Google Analytics starts reading
your URL right after the .com (or .edu, or .net, as it were). The GA
sees the above as /folder1/subfolder2/index.html. So when
the person who wrote the question above starts his RegEx with
^/subfolder2, he shoots himself in the foot. In the eyes of GA,
/folder1 comes before /subfolder2, yet the caret mandates that
/subfolder2 must be at the beginning of the target string. (And
it’s not! So it will never match.)
aDvaNCed tIp
When you put a caret inside square brackets at the
very beginning, it means match only characters that
are not right after the caret. So [^0-9] means
if the target string contains a digit,
it is not a match.
19
20. anchors
ThE doLLar siGn
$
A dollar sign means don’t match if the target string has any
characters beyond where I have placed the dollar sign in my
Regular Expression.
So let’s say you want to include your homepage in your funnel.
(Not such a great idea, if you ask me, but this book is about RegEx
and not best analysis practices.) Google Analytics, by default, calls
your homepage this:
/
i.e., just a slash. The problem with including just a slash in your
funnel is that it will match everything. Every single URL on your
site has a slash in it, so it automatically matches them all, since
RegEx are greedy. In order to match just your homepage, you
Use this cautiously, because you might have
should follow it with a dollar-sign anchor, like so: query parameters that are “shut out” of the
match. For example, let’s say your affiliate
/$ marketers append code only to the end of the
URL, so they can get credit for the sale:
That means the page has to end with a slash.
http://www.mysite.com/productpage123
But wait … aren’t there pages that end with a slash that aren’t your ?affiliate=storename
home page? Like so: /mysite.com/folder/ In the eyes of Google Analytics, that looks like:
So the very best way you can be sure to get just the slash page /?affiliate=storename
(homepage) is with a beginning and an ending anchor:
… and it doesn’t match the ^/$ RegEx in the
^/$ example on this page, because the target string
doesn’t start and end with the same slash.
20
21. leT s prActicE
When I was a newbie to RegEx, I used to see this on the RegEx Wikipedia
listing (which I pored over constantly, trying to understand what these little characters were):
((great )*grand)?((fa|mo)ther)
Like most things in life, once you understand them, they are trivial … but before you understand them, they are daunting. So I will take this apart to
make it easier to understand.
The parentheses create groups, separated by a question mark. So we effectively have:
(First Expression in the first set of parentheses)?(Second Expression in the second set of parentheses)
Since a question mark means include zero or one of the former The star tells us to match zero, one or more than one
Now let’s go back and instances of the expression before it. So it can match
item, we know that the target string will be a match to this practice
look at the first half, the a string that doesn’t include great, in which case we
RegEx whether it only matches the expression in the second set
part that came before just have grand; and, of course, we always have the
of parentheses or it matches both the expressions in both sets of
the question mark: end of the expression, which will be either mother or
parentheses. (Right? That’s what question marks do, allowing the
target string to match the item before them OR NOT.) So let’s start father. So we are allowed to match to grandmother
((great)*grand) or grandfather. It can match a string which includes
by looking at the second half only, which we now know should be
able to stand by itself: great just once, in which case we have great
grandmother or great grandfather. And it can
((fa|mo)ther) match a string which includes great more than once,
so we might end up with great great great great
The pipe symbol | means or. So this resolves to father or mother. grandmother or great great grandfather.
So there you have it – all your ancestors
with just one Regular Expression.
21
22. ( noT )
ThE end
So instead of concluding, let’s get started … with a Write a Regular Expression that matches both dialog and
dialogue
pop quiz. I’ll blog about the answers soon after this is published.
(That way, you’ll all have a chance to say, “No, Robbin, I found Write a RegEx that matches two request URLs:
a better way to write them!”) The title of the blog post will be /secondfolder/?pid=123 and /secondfolder/?pid=567
RegEx eBook Answers, so you can search for it easily. (and cannot match other URLs)
Write a single Regular Expression that matches all your
subdomains (and doesn’t match anything else). Make it as
short as possible, since Google Analytics sometimes limits the
number of characters you can use in a filter. Your subdomains
are subdomain1.mysite.com, subdomain2.mysite.com,
subdomain3.mysite.com, subdomain4.mysite.com,
www.mysite.com, store.mysite.com and blog.mysite.com
Write a funnel and goal that includes three steps for the
funnel and the final goal step (four steps in all), using Regular
Expressions. Notice that there are two ways to achieve Step 2.
Here are the three pages:
➊ /store/
➋ /store/creditcard or store/moneyorder
➌ /store/shipping
➍ /store/thankyou
22