Select the text frame and try to run this code:
var story = app.selection[0].parentStory;
var pgfs = story.paragraphs;
for (var i=0; i<pgfs.length; i++) {
if (pgfs[i].tables.length == 0) continue;
var table = pgfs[i].tables[0];
var cell = table.rows[0].cells[1];
var contents = pgfs[i].lines[0].contents;
app.findTextPreferences = NothingEnum.NOTHING;
app.changeTextPreferences = NothingEnum.NOTHING;
app.findTextPreferences.findWhat = contents;
app.changeTextPreferences.changeTo = '';
pgfs[i].changeText();
cell.contents = contents;
}
Or, even simpler solution without changeText():
var story = app.selection[0].parentStory;
var pgfs = story.paragraphs;
for (var i=0; i<pgfs.length; i++) {
if (pgfs[i].tables.length == 0) continue;
pgfs[i].tables[0].rows[0].cells[1].contents = pgfs[i].lines[0].contents;
pgfs[i].lines[0].contents = '';
}
Update
To move the footnotes you can try this:
var story = app.selection[0].parentStory;
var pgfs = story.paragraphs;
app.findGrepPreferences = NothingEnum.NOTHING;
app.findGrepPreferences.findWhat = "footnote\\s+\\d+.+"; // <-- your GREP
for (var i=pgfs.length-1; i>=0; i--) { // loop backward
if (pgfs[i].tables.length == 0) continue; // skip if no table
var finds = pgfs[i].findGrep();
if (finds.length == 0) continue; // skip if noting was found
pgfs[i].insertionPoints[-1].contents = finds[0].contents;
finds[0].contents = '';
}
Before:

After:
