In an Angular JS context, the value after the hashtag tells a lot about what the user is actually viewing. Which page.
Using the default UEM User Actions, we see visits and all actions below, but we are missing the context of that page. Since a single-page application only contains one real GET request in the beginning.
However, the User Action Purepaths contains the complete URL from the client which does contain the value of the hashtag.
Is there a possibility to use this URL, a part of this URL anyway, as a splitting or filter option?
I tried with Page Actions - Name on Source URI, but no luck with that so far
Answer by Bert H. ·
Above a test BT where I split on Source URI where I capture everything using regex (.*)
As you can see, this is not the URL, but the URI which does not include Host info, parameters or hashtags.
I also tried (.(?!#/))+$, but since the value to match does not contain the hashtag, this doesn't work off course.
Answer by Bert H. ·
This is indeed what I tried, but it didn't work.
Just to test I created a splitting on Source URI without any expression, so I would see the entire thing. And I saw that it only gave me the URI. Without parameter and without #tags.
It is called "URI" and not "URL", so I guess it is by design.
Answer by Graeme W. ·
Bert,
A Page Actions - Name measure should have worked. Here's an example of what I think will work in your case:
First, I'm assuming that there isn't another '#' symbol is what you've blacked out, so you can pick up the tag at the end with just #/(.*)
Second, I embellished the regex to check that the URL includes 'resources', in case some such check would be useful. You can modify this or leave it out to suit. This is an example of a splitting measure also acting as a filter.
Third, I added a check that the action is a click – but you can leave that out if it's not necessary in your case.
One note: transformation regexes don't have to match the whole string (e.g., the whole URL), but in this measure I think you do need to include parentheses (which define a so-called matching group), which is why I added () to the end of 'click'. If you get it working this way, you can always drop the parentheses and see if it makes a difference.
Let us know how this goes ...
-- Graeme
JANUARY 15, 3:00 PM GMT / 10:00 AM ET