Question: ```
import Vue from 'vue'
import Router from 'vue-router'

Vue.use(Router)

export default new Router({
  mode: 'history',
  base: process.env.BASE_URL,
  routes: [
{
  path: '/home',
  name: 'home',
  component: () => import(  /* webpackChunkName: "[request]" */
    `@/views/Home.vue`)
},
{
  path: '/about',
  name: 'about',
  component: () => import(  /* webpackChunkName: "[request]" */
    `@/views/About.vue`)

}
  ]
})

```

Expected out put in chunks
About-vue.de9bf8b8.js app.cb7314dd.js chunk-vendors.cc2e3269.js
Home-vue.de9bf8b8.js.map

But actual result is
[request].de9bf8b8.js app.cb7314dd.js chunk-vendors.cc2e3269.js

When I omit the [request] or try with a function like

```
function getComp(fileName)

{

console.log(‘func called’)

return ()=>import(/* webpackChunkName: “[request]” */ @/views/${fileName}.vue)

}

```

in this approach it works , it also works fine when i omit the [request] but the my bundles are difficult to manage and debug without proper names

Answer: 
Regex and `max` with length as the key:

```
In [12]: s = "43gfd54452jhg4fddsgf"

In [13]: max(re.findall(r'\d+', s), key=len)  # digits
Out[13]: '54452'

In [14]: max(re.findall(r'\D+', s), key=len)  # non-digits
Out[14]: 'fddsgf'

```

Similarly, you can change the Regex pattern to get your desired substring type.
If there are always "\*\*" between each substring. All you have to do is iterate over the different elements, keeping in a variable the longest substring you have found so far.

```
longest_letter = 0
longest_digit = 0
for el in s.split("**"):
    if(el.isalpha()):
        len_letter = len(el)
        if(len_letter > longest_letter):
            longest_letter = len_letter
    if(el.isdigit()):
        len_digit = len(el)
        if(len_digit > longest_digit):
            longest_digit = len_digit
print (longest_letter)
print (longest_digit)

```