Alas, they're in one large text file. I work at a university. Basically, I've got a 5MB text file containing thousands of paragraphs, each of which is a description of a different course. I want students to be able to search this catalog, and I want their results to be the full text of all matching paragraphs.

Right now, I handle this by using a regex to search each paragraph, returning to the user every paragraph that matches the query. The file is searched each time, so this is quite inefficient. As Tanktalus suggests below, I'd be better off if these descriptions were already in a database. But there's no question that this particular project isn't worth the time I would need to do that.

Of course, using a database would also permit the students to run more powerful queries, which is what I'd really like to do. My main concern at this point is not the efficiency of the search (which isn't terribly slow as it is), but improving the query capabilities.

Thanks,
--John


In reply to Re^2: Google-like query of ASCII text with Text::Query or other modules by jbullock35
in thread Google-like query of ASCII text with Text::Query or other modules by jbullock35

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.