If you have a URL like http://foo.com/bar_qux in your history, typing "bar" into the omnibox will propose that URL as a completion, but typing "qux" will not. This appears to be because the fulltext index of history URLs uses the standard word splitting algorithm from icu to decide what's a word, and _ isn't a line-break point so doesn't match (code at https://cs.chromium.org/chromium/src/components/omnibox/browser/in_memory_url_index_types.cc?q=String16SetFromString16&sq=package:chromium&dr=CSs&l=112) - it appears to just call the same thing for page titles and page URLs.
Might it be worth having a URL-specific behaviour here that splits on "more" characters? At least _ but maybe some others? This makes the completion not work great for sites that have hacker_case_style_paths in their URLs, at least.
cc jshin@ as the ICU expert who may be able to comment on whether it's a huge pain to get different behaviour from BreakIterator :)
Comment 1 by pkasting@chromium.org
, Aug 10 2016